¿Qué es un registro
de transacciones en Sql Server?
Es un archivo adjunto a las bases de datos SQL Server.. Es importante
revisar periódicamente el tamaño de estos archivos, porque es posible que
llegue a ocupar mucho espacio en disco. Por otra parte si llegara a producirse un
error en el sistema, es posible utilizar este archivo para poner la base de
datos en marcha. El registro de transacciones nunca se debe eliminar o Mover a menos que se realice un buen plan de
mantenimiento conociendo a fondo los posibles problemas que se puedan
presentar.
¿Quién usa el registro de transacciones?
Este archivo se encarga de registrar las transacciones que
se realizan sobre una base de datos, por tanto es de vital importancia para la
BD. Si se quiere revisar cuanto espacio de disco esta ocupando los registros de
transacciones de sql server se debe ejecutar el siguiente comando:
DBCC SQLPERF(LOGSPACE);
GO
Con esto Usted vera cuanto espacio
esta reservado y cuanto espacio esta siendo utilizado por el registro de
transacciones
Database
Name Log Size (MB) Log Space Used (%) Status
-------------
------------- ------------------ -----------
master 3.99219 14.3469 0
tempdb 1.99219 1.64216 0
model 1.0 12.7953 0
msdb 3.99219 17.0132 0
AdventureWorks
19.554688 17.748701 0
¿Qué tiene que ver el
Modo Simple o Full de recovery con los registros de transacciones?
Al manejar una base de datos Sql Server es importante
conocer los modelos de recuperación de una base de datos, este método es
definido en la base de datos como una propiedad. Hasta el momento exiten 3
metodos: Simple, Completa y por medio de registro de operaciones masivas. Los
mas comunes son el Simple y el completo. Ahora nos enfocaremos en resumir las
diferencias que presentan estos dos métodos.
Metodo de Recuperacion Simple.- El riesgo de pérdida de información es mayor
debido a que si se presentará un error en la base de datos solamente podríamos recuperar
la informacion hasta la fecha y hora del ultimo backup. Ventaja es que en el backup solamente toma los datos
obviando las transacciones. Esto ocasiona menor consumo de Disco Duro en el
servidor.
Metodo de Recuperacion Completa.- El riesgo de pérdida de información
es mucho menor ya que este método toma en cuenta al registro de transacciones,
entonces es posible recuperar y/o restaurar una base de datos hasta cierto
punto en el tiempo, incluso hasta
instantes previos al error de un usuario o comando. La desventaja de este método
es que el archivo de registro de transacciones puede crecer demasiado con el afán
de reservar espacio en el disco duro, siempre con el fin de utilizarlo en el
futuro. Debido a malas configuración en el control de crecimiento de este
archivo puede reducir de tamaño y las maneras de como hacerlas las veremos a continuación.
¿Cómo bajar el tamaño reservado en disco para los archivos
de registro de transacciones de Sql server?
Ojo: La reducción sólo se puede realizar mientras la base de
datos está conectada y existe al menos un archivo de registro virtual libre. En
algunos casos, no será posible reducir el registro hasta el siguiente
truncamiento del registro.
En sql server 2008 r2 se tiene el siguiente comando “DBCC ShrinkfFile” para mas informacion vea
la ayuda de SQL. Ahora nos enfocaremos
en ejecutar el código, en el analizador de consultas ejecute lo siguiente:
USE AdventureWorks2012;
GO
-- cambiando la base de datos en recuperacion simple.
ALTER DATABASE AdventureWorks2012
SET RECOVERY SIMPLE;
GO
-- Ejecutamos el commando definiendo el tamaño del archivo en megas en este caso es 1 MB.
DBCC SHRINKFILE (AdventureWorks2012_Log, 1);
GO
-- Devolvemos el estado al modo de recuperacion en la base de datos.
ALTER DATABASE AdventureWorks2012
SET RECOVERY FULL;
GO
Por ultimo verifica el uso de los archivos de registros de transacciones en todas las bases de datos de la siguiente manera en el analizador de consultas:
DBCC SQLPERF(LOGSPACE);
GO
GO
Suerte!
Fuentes de informacion:
http://msdn.microsoft.com/es-es/library/ms189493%28v=sql.105%29.aspx


No hay comentarios.:
Publicar un comentario