Aplicar copias de seguridad de registros de transacción (SQL Server)
Este tema solo es relevante para el modelo de recuperación completa o para el modelo de recuperación optimizado para cargas masivas de registros.
En este tema se describe la aplicación de copias de seguridad del registro de transacciones como parte de la restauración de una base de datos de SQL Server .
En este tema:
Requisitos para restaurar copias de seguridad del registro de transacciones
Usar copias de seguridad de registros para restaurar hasta el momento del error
Requisitos para restaurar las copias de seguridad del registro de transacciones
Para aplicar una copia de seguridad del registro de transacciones, deben cumplirse los requisitos siguientes:
Suficientes copias de seguridad de registros para una secuencia de restauración: Debe tener suficientes copias de seguridad de entradas de registro para poder completar una secuencia de restauración. Las copias de seguridad de registros necesarias, incluida la copia del final del registro si es necesaria, deben estar disponibles antes de iniciar la secuencia de restauración.
Orden de restauración correcto: Primero se debe restaurar la copia de seguridad completa de la base de datos o la copia de seguridad diferencial de la base de datos inmediatamente anterior. A continuación, todos los registros de transacciones creados después de esa copia de seguridad completa o diferencial de la base de datos deben restaurarse en orden cronológico. Si se pierde o se daña una copia de seguridad del registro de transacciones en esta cadena de registros, solo puede restaurar los registros de transacciones anteriores al registro de transacciones que falta.
Base de datos aún no recuperada: La base de datos no se puede recuperar hasta que se haya aplicado el registro de transacciones final. Si recupera la base de datos después de restaurar una de las copias de seguridad intermedias del registro de transacciones, anterior al final de la cadena de registros, no podrá restaurar la base de datos más allá de ese punto sin reiniciar toda la secuencia de restauración, empezando por la copia de seguridad completa de la base de datos.
Sugerencia
Un procedimiento recomendado consiste en restaurar todas las copias de seguridad de registros (RESTORE LOG nombre_base_de_datos WITH NORECOVERY). Tras restaurar la última copia de seguridad de registros, recupere la base de datos en una operación aparte (RESTORE DATABASE nombre_base_de_datos WITH RECOVERY).
Registros de transacciones y recuperación
Cuando termina la operación de restauración y recupera la base de datos, la recuperación revierte todas las transacciones incompletas. Este paso se conoce como la fase de deshacer. Revertir es necesario para restaurar la integridad de la base de datos. Después de la reversión, la base de datos pasa a estar en línea y no se pueden aplicar más copias de seguridad del registro de transacciones a la base de datos.
Por ejemplo, una serie de copias de seguridad del registro de transacciones contiene una transacción de larga duración. El inicio de la transacción se registra en la primera copia de seguridad del registro de transacciones, pero el final de la transacción se registra en la segunda copia de seguridad. En la primera copia de seguridad del registro de transacciones no se registra ninguna operación de confirmación o reversión. Si se ejecuta una operación de recuperación cuando se aplica la primera copia de seguridad del registro de transacciones, la transacción de larga ejecución se trata como incompleta y se revierten las modificaciones de datos registradas en la primera copia de seguridad del registro de transacciones de la transacción. SQL Server no permite la aplicación de la segunda copia de seguridad del registro de transacciones a partir de este punto.
Nota:
En algunas circunstancias, es posible agregar un archivo explícitamente durante la restauración del registro.
Usar copias de seguridad de registros para restaurar hasta el momento del error
Suponga el siguiente flujo de eventos.
Time | Evento |
---|---|
8:00 a. m. | Copia de seguridad de la base de datos para crear una copia de seguridad completa de la base de datos. |
Mediodía | Copia de seguridad del registro de transacciones. |
4:00 p. m. | Copia de seguridad del registro de transacciones. |
6:00 p. m. | Copia de seguridad de la base de datos para crear una copia de seguridad completa de la base de datos. |
8:00 p. m. | Copia de seguridad del registro de transacciones. |
9:45 p. m. | Se produce el error. |
Nota
Para obtener una explicación de esta secuencia de ejemplo de copias de seguridad, consulte Copias de seguridad del registro de transacciones (SQL Server).
Para restaurar la base de datos a su estado a las 9:45 p. m. (el momento del error), se puede utilizar cualquiera de los siguientes procedimientos alternativos:
Alternativa 1: restaurar la base de datos mediante la copia de seguridad de la base de datos completa más reciente
Cree una copia del final del registro de transacciones activo actualmente como si fuera el del momento del error.
No restaure la copia de seguridad completa de la base de datos creada a las 08:00:00 a. m. En su lugar, restaure la copia de seguridad completa de la base de datos creada a las 6:00 p. m. más reciente y, a continuación, aplique la copia de seguridad de registros de las 8:00 p. m. y la copia del final del registro.
Alternativa 2: restaurar la base de datos mediante una copia de seguridad completa de la base de datos anterior
Nota
Este proceso alternativo resulta útil si un problema evita que se utilice la copia de seguridad completa de la base de datos creada a las 6:00 p. m. Este proceso lleva más tiempo que restaurar a partir de la copia de seguridad completa de la base de datos creada a las 6:00 p. m.
Cree una copia del final del registro de transacciones activo actualmente como si fuera el del momento del error.
Restaure la copia de seguridad completa de la base de datos creada a las 8:00 a. m. y, después, restaure secuencialmente las cuatro copias de seguridad del registro de transacciones. Esta acción pone al día todas las transacciones completadas hasta las 9:45 p. m.
Esta alternativa señala la seguridad redundante que ofrece el mantenimiento de una cadena de copias de seguridad del registro de transacciones a través de una serie de copias de seguridad completas de base de datos.
Nota
En algunos casos, también se pueden utilizar registros de transacciones para restaurar una base de datos hasta un momento específico. Para obtener más información, restaure una base de datos de SQL Server a un momento dado (modelo de recuperación completa).
Related Tasks
Para aplicar una copia de seguridad del registro de transacciones
Para restaurar hasta su punto de recuperación
Restaurar una base de datos de SQL Server a un momento dado (modelo de recuperación completa)
SqlRestore (SMO)
Recuperación de bases de datos relacionadas que contienen transacciones marcadas
Para recuperar una base de datos después de restaurar las copias de seguridad mediante WITH NORECOVERY