¿Cómo trunco el registro de transacciones en una base de datos de SQL Server 2008?
¿Cuáles son las mejores formas posibles?
Intenté esto desde un blog de la siguiente manera:
1) Desde la configuración de la base de datos hasta la recuperación simple, reduciendo el archivo y una vez más configurando la recuperación completa, de hecho está perdiendo sus valiosos datos de registro y no podrá restaurar el punto en el tiempo. No solo eso, tampoco podrá utilizar archivos de registro posteriores.
2) La reducción del archivo de base de datos o la base de datos agrega fragmentación.
Hay muchas cosas que puedes hacer. Primero, comience a realizar una copia de seguridad de registro adecuada utilizando el siguiente comando en lugar de truncarlos y perderlos con frecuencia.
BACKUP LOG [TestDb] TO DISK = N'C:\Backup\TestDb.bak'
GO
Elimina el código de SHRINKING del archivo. Si está realizando copias de seguridad de registro adecuadas, su archivo de registro por lo general (nuevamente, por lo general, se excluyen los casos especiales) no crece demasiado.
fuente
Respuestas:
La forma más segura y correcta de truncar un archivo de registro si la base de datos está en modo de recuperación completa es hacer una copia de seguridad del registro de transacciones (sin
TRUNCATE_ONLY
. Esto será obsoleto en futuras versiones y no es aconsejable).Parece que quiere reducir su archivo de registro después, en cuyo caso ejecutaría un
DBCC SHRINKFILE(yourTLogName)
comando. Hay un segundo parámetro opcional para el tamaño solicitado para reducirlo.fuente
Puede hacer una copia de seguridad del registro en el dispositivo nulo:
O bien, podría cambiar el modelo de recuperación a simple y luego volver a la carga completa / masiva nuevamente.
fuente
Si no le importan sus datos de registro y solo desea deshacerse de ellos:
Cambie el modelo de recuperación de completo a simple y luego de nuevo a completo. Reduzca el archivo usando DBCC SHRINKFILE con el argumento TRUNCATEONLY
El siguiente comando cambiará el modelo de recuperación de completo a simple
El siguiente comando cambiará el modelo de recuperación a completo
Para encontrar el nombre del archivo de registro, puede usar la siguiente consulta
Reducir el archivo
Consulte ¿Cuál es el comando para truncar un archivo de registro de SQL Server? para más información sobre esto
fuente