14/09/2008, 21:13
|
| | Fecha de Ingreso: septiembre-2008
Mensajes: 4
Antigüedad: 16 años, 4 meses Puntos: 0 | |
Respuesta: Es posible un modo seguro de Transacciones en SQL Hola a todos
Despues de hacer una investigación en internet, a lo que llegue es la siguiente manera de simularlo, tengo dos propuestas:
1-Haciendo un job en el SQL AGENT, se crea este job con cierta perioricidad (en el Horario para que se ejecute) depende de la empresa o de las necesidades, luego lo que se hace es hacer un nuevo "STEP" y ahi se escribe el código en TRANSACT-SQL de ejemplo hice este, mi base se llama MVR:
USE MVR
CHECKPOINT
BACKUP LOG MVR TO DISK='C:\LOG.back'
BACKUP LOG MVR WITH TRUNCATE_ONLY
Según lo que he leido para poder truncar un LOG primero se debe hacer un CHECKPOINT en la base de datos para asegurar que las páginas en memoria pendientes de escribir en disco, se escriben en disco. Luego se hace un backup de los logs y se ubican en la dirección 'C:\LOG.back' y despues ya pueden ser truncados los logs, truncar permite liberar automáticamente el espacio en disco para su reutilización por el registro de transacciones, si desean leer un poco más de truncamiento revisen la siguiente página http://technet.microsoft.com/es-es/library/ms189085.aspx.
El problema que encontre al realizar esto es no me crea varios archivos parece que le cae encima al anterior o adjunta el nuevo contenido al archivo anterior, no encontre la forma de como hacer que le coloque un nombre con un número secuencial para tenerlos todos
La segunda opción que encontre fue hacer un plan de mantenimiento, que tambien es un job, al igual que lo anterior dentro del asistente le indico que sea en cierta dirección y que sólo respalde los logs y me genere un reporte. A continuación procedo a modificarlo de la siguiente manera:
USE MVR
CHECKPOINT
EXECUTE master.dbo.xp_sqlmaint N'-PlanID 8BA9F086-8621-4A32-A367-8D7603189856 -Rpt "C:\Users\Esteban\Desktop\Esteban6.txt" -WriteHistory -VrfyBackup -BkUpMedia DISK -BkUpLog "C:\Users\Esteban\Desktop" -CrBkSubDir -BkExt "TRN"'
BACKUP LOG MVR WITH TRUNCATE_ONLY
La única línea que genera el plan de mantenimiento es esta
EXECUTE master.dbo.xp_sqlmaint N'-PlanID 8BA9F086-8621-4A32-A367-8D7603189856 -Rpt "C:\Users\Esteban\Desktop\Esteban6.txt" -WriteHistory -VrfyBackup -BkUpMedia DISK -BkUpLog "C:\Users\Esteban\Desktop" -CrBkSubDir -BkExt "TRN"'
El resto lo adheri, ahora se puede hacer también que despues de truncar el archivo cambiarle el tamaño, por si ha crecido más de lo que se espera. Estas son mis dos soluciones, sé que del todo no emulan completamente al ARCHIVE LOG pero pueden ser un opción a utlizar si se necesita algo similar, resivo sugerencias.
Solo quiero aclarar que se supone que debería ser en SQL SERVER 2005 no lo tengo pero tengo entendido que el plan de mantemiento tiene la opción de truncado y para SQL SERVER 2005 el registro de transacciones se maneja de manera circular.
Muchas Gracias
Última edición por Police; 14/09/2008 a las 21:20 |