jueves 17 de noviembre de 2011

Reducir el tamaño del log de transacciones en SQL Server

Últimamente me he encontrado unas cuantas situaciones en las que me han preguntado cómo reducir el tamaño del log de transacciones en SQL Server 2008 y/o superior, ya que las instrucciones usadas en SQL Server 2000 y SQL Server 2005 usadas para este fin dejaron de estar soportadas.
El script a usar sería el siguiente (en este caso usaremos la base de datos AdventureWorks):
USE AdventureWorks
GO

ALTER DATABASE AdventureWorks 
SET RECOVERY SIMPLE
GO

DBCC SHRINKFILE (AdventureWorks_Log)
GO

ALTER DATABASE AdventureWorks 
SET RECOVERY FULL
GO
Cabe tener en cuenta que en este ejemplo la instrucción DBCC SHRINKFILE reduce el fichero de log al máximo (en el parámetro se le debe indicar el nombre lógico del fichero).
En otro post ya hablaremos el porqué del crecimiento del fichero de log y como se podría evitar.
¡Enjoy T-SQL!

2 comentarios: