Reducir el tamaño del archivo log en SQL Server

| 2013-05-26 | No hay comentarios »

En toda base de datos de SQL Server hay al menos dos ficheros. Uno es el fichero de base de datos donde estarán almacenados los datos de nuestras tablas (y demás objetos) y otro es el fichero de transacciones. El fichero de transacciones consiste en una serie de registros de todas las modificaciones de la base de datos y de la transacción que ha realizado cada modificación. En el registro de transacciones figura el inicio de cada transacción. También registra los cambios de los datos y facilita suficiente información para deshacer las modificaciones (si fuera necesario posteriormente) realizadas durante cada transacción. El fichero de base datos tiene extensión mdf mientras que el de transacciones tiene extensión ldf. En este caso nos vamos a concentrar en este último que es el que nos puede dar problemas en cuanto al espacio.
El script a usar (Ejecutarlo con el Administrador de consultas) sería el siguiente (en este caso usaremos la base de datos MuOnline):

Para SQL Server 2008 en adelante:

USE MuOnline
GO

ALTER DATABASE MuOnline
SET RECOVERY SIMPLE
GO

DBCC SHRINKFILE (MuOnline_Log)
GO

ALTER DATABASE MuOnline
SET RECOVERY FULL
GO

Para SQL Server 2000 y 2005:

USE MuOnline
CHECKPOINTEXEC
sp_addumpdevice 'disk', 'CopiaMuOnline', 'd:\MuOnline.bak'
BACKUP DATABASE MuOnline TO CopiaMuOnline
BACKUP LOG MuOnline WITH TRUNCATE_ONLY
DBCC SHRINKFILE (MuOnline_Log, 100)

Acerca del autor: Rodrigo Paszniuk

Ingeniero Informático, amante de la tecnología, la música, el ciclismo y aprender cosas nuevas.

Posts Relacionados

  • Utilizar SQL Server en Android con jTDS
  • Backups automáticos en SQL Server