Tengo una base de datos que tiene un archivo de datos de 350 MB (.mdf) y un archivo de registro de 4.9 GB (.ldf). El modelo de recuperación está configurado en FULL
.
Cuando trato de reducir el archivo de registro, no se reduce.
Sé que reducir una base de datos no es bueno y no debería hacerse. Pero todavía estoy tratando de hacerlo por reducir el archivo de registro.
Cuando corrí
DBCC SQLPerf(logspace)
¡Encontré que el tamaño de registro es 4932 MB y el espacio de registro utilizado es 98.76% !
Entonces probé este comando
USE <databasename>;
DBCC loginfo;
Ahora, casi todos los VLF tienen "estado 2", lo que significa que todos están en uso.
Traté de hacer una copia de seguridad del registro y luego reducir el archivo de registro. La reducción no redujo el tamaño.
Cambié el modelo de recuperación SIMPLE
e intenté reducirlo nuevamente, pero esto tampoco ayudó.
Revisé las transacciones abiertas
DBCC opentran (database);
y descubrí que ninguna transacción está abierta ahora.
¿Qué me impide reducir el archivo de registro? ¿Como puedo resolver esto?
log_reuse_wait_desc
dioACTIVE_TRANSACTION
. Tan pronto como se completó la transacción, la reducción funcionó bien.