¿Cuál es el comando para truncar un archivo de registro de SQL Server?
-
09-06-2019 - |
Pregunta
Necesito vaciar un archivo LDF antes de enviárselo a un colega.¿Cómo fuerzo a SQL Server a truncar el registro?
Solución
si recuerdo bien...en analizador de consultas o equivalente:
BACKUP LOG databasename WITH TRUNCATE_ONLY
DBCC SHRINKFILE ( databasename_Log, 1)
Otros consejos
En el estudio de gestión:
- No hagas esto en un entorno en vivo, pero para asegurarte de reducir tu base de datos de desarrollo tanto como puedas:
- Haga clic derecho en la base de datos, elija
Properties
, entoncesOptions
. - Asegúrese de que el "Modelo de recuperación" esté configurado en "Simple", no en "Completo".
- Haga clic en Aceptar
- Haga clic derecho en la base de datos, elija
- Haga clic derecho en la base de datos nuevamente, elija
Tasks
->Shrink
->Files
- Cambie el tipo de archivo a "Registro"
- Haga clic en Aceptar.
Alternativamente, el SQL para hacerlo:
ALTER DATABASE mydatabase SET RECOVERY SIMPLE
DBCC SHRINKFILE (mydatabase_Log, 1)
Árbitro: http://msdn.microsoft.com/en-us/library/ms189493.aspx
Para SQL Server 2008, el comando es:
ALTER DATABASE ExampleDB SET RECOVERY SIMPLE
DBCC SHRINKFILE('ExampleDB_log', 0, TRUNCATEONLY)
Esto redujo mi archivo de registro de 14 GB a 1 MB.
Para SQL 2008, puede hacer una copia de seguridad del registro en nul
dispositivo:
BACKUP LOG [databaseName]
TO DISK = 'nul:' WITH STATS = 10
Y luego usar DBCC SHRINKFILE
para truncar el archivo de registro.
nombre de registro del registro de copia de seguridad con truncate_only seguido de un comando dbcc psiquiatra
Otra opción es desconectar la base de datos a través de Management Studio.Luego simplemente elimine el archivo de registro o cámbiele el nombre y elimínelo más tarde.
De vuelta en Management Studio, vuelva a adjuntar la base de datos.En la ventana adjunta, elimine el archivo de registro de la lista de archivos.
La base de datos adjunta y crea un nuevo archivo de registro vacío.Después de comprobar que todo está bien, puede eliminar el archivo de registro renombrado.
Probablemente no deberías usar esto para bases de datos de producción.