Compartir a través de


Ejemplo: Restauración por etapas de la base de datos (modelo de recuperación completa)

Una secuencia de restauración por etapas restaura y recupera una base de datos en fases a nivel de grupo de archivos, comenzando con el grupo de archivos primario y todos los grupos de archivos de lectura/escritura, y luego los grupos de archivos secundarios.

En este ejemplo, la base de datos adb se restaura en un equipo nuevo después de un desastre. La base de datos usa el modelo de recuperación completa, por lo cual, antes de que se inicie la restauración, debe hacerse una copia de seguridad del tail-log de la base de datos. Antes del desastre, todos los grupos de archivos están en línea. El grupo B de archivos es de solo lectura. Todos los grupos de archivos secundarios deben restaurarse, pero se restauran en orden de importancia: A (más alto), Cy por último B. En este ejemplo, hay cuatro copias de seguridad de registros, incluida la copia de seguridad del final del registro.

copia de seguridad de Tail-Log

Antes de restaurar la base de datos, el administrador de la base de datos debe realizar una copia de seguridad del final del registro. Dado que la base de datos está dañada, la creación de la copia de seguridad del registro de cola requiere el uso de la opción NO_TRUNCATE.

BACKUP LOG adb TO tailLogBackup WITH NORECOVERY, NO_TRUNCATE  

La copia de seguridad del tail-log es la última copia de seguridad que se utiliza en las siguientes secuencias de restauración.

Restaurar Secuencias

Nota:

La sintaxis de una secuencia de restauración en línea es la misma que para una secuencia de restauración sin conexión.

  1. Restauración parcial del grupo Ade archivos principal y secundario.

    RESTORE DATABASE adb FILEGROUP='Primary' FROM backup1   
       WITH PARTIAL, NORECOVERY  
    RESTORE DATABASE adb FILEGROUP='A' FROM backup2   
       WITH NORECOVERY  
    RESTORE LOG adb FROM backup3 WITH NORECOVERY  
    RESTORE LOG adb FROM backup4 WITH NORECOVERY  
    RESTORE LOG adb FROM backup5 WITH NORECOVERY  
    RESTORE LOG adb FROM tailLogBackup WITH RECOVERY  
    
  2. Restauración en línea del grupo Cde archivos .

    En este momento, el grupo de archivos principal y el grupo A de archivos secundario están en línea. Todos los archivos de los grupos de archivos B y C están pendientes de recuperación y los grupos de archivos están offline.

    Los mensajes de la última RESTORE LOG instrucción del paso 1 indican que se aplaza la reversión de transacciones que implican el grupo C de archivos, ya que este grupo de archivos no está disponible. Las operaciones normales pueden continuar, pero estas transacciones mantienen bloqueos y el truncamiento del registro no se producirá hasta que se pueda completar la reversión.

    En la segunda secuencia de restauración, el administrador de bases de datos restaura el grupo Cde archivos :

    RESTORE DATABASE adb FILEGROUP='C' FROM backup2a WITH NORECOVERY  
    RESTORE LOG adb FROM backup3 WITH NORECOVERY  
    RESTORE LOG adb FROM backup4 WITH NORECOVERY  
    RESTORE LOG adb FROM backup5 WITH NORECOVERY  
    RESTORE LOG adb FROM tailLogBackup WITH RECOVERY  
    

    En este momento, los grupos principales y de archivos A y C están en línea. Los archivos del grupo B de archivos permanecen pendientes de recuperación, con el grupo de archivos sin conexión. Se han resuelto las transacciones diferidas y se produce el truncamiento del registro.

  3. Restauración en línea del grupo Bde archivos .

    En la tercera secuencia de restauración, el administrador de bases de datos restaura el grupo Bde archivos . La copia de seguridad del grupo B de archivos se realizó después de que el grupo de archivos se convirtiera en de solo lectura; por lo tanto, no es necesario implementarla durante la recuperación.

    RESTORE DATABASE adb FILEGROUP='B' FROM backup2b WITH RECOVERY  
    

    Todos los grupos de archivos ahora están en línea.

Ejemplos adicionales

Véase también

BACKUP (Transact-SQL)
Restauración en línea (SQL Server)
Aplicar copias de seguridad de registros de transacción (SQL Server)
RESTORE (Transact-SQL)
Restauraciones por etapas (SQL Server)