Ejemplo: Restauración por etapas exclusiva para algunos grupos de archivos (modelo de recuperación completa)

Se aplica a:SQL Server

Este tema solo es de interés para las bases de datos de SQL Server que contengan varios archivos o grupos de archivos con el modelo de recuperación completa.

En una secuencia de restauración por etapas restaura y recupera una base de datos en fases en el nivel del grupo de archivos, empezando con los grupos de archivos principales y todos los secundarios de lectura/escritura.

En este ejemplo, una base de datos llamada adb, que utiliza el modelo de recuperación completa, contiene tres grupos de archivos. El grupo de archivos A es de lectura/escritura, mientras que los grupos de archivos B y C son de solo lectura. Inicialmente, todos los grupos de archivos están en línea.

Parece que el grupo de archivos principal y el B de la base de datos adb están dañados. El grupo de archivos principal es bastante más que pequeño y puede restaurarse con rapidez. El administrador de la base de datos decide restaurarlos utilizando una secuencia de restauración por etapas. En primer lugar se restauran el grupo de archivos principal y los registros de transacciones posteriores y luego se recupera la base de datos.

Los grupos de archivos intactos A y C incluyen información fundamental. Por lo tanto, se recuperarán a continuación para ponerlos en línea tan pronto como sea posible. Por último, se restaurará y recuperará el grupo de archivos secundario dañado, el B.

Secuencias de restauración:

Nota

La sintaxis de un flujo de restauración en línea es la misma que la de un flujo de restauración sin conexión.

  1. Cree una copia del final del registro de la base de datos adb. Este paso es esencial para actualizar los grupos de archivos A y C intactos respecto al punto de recuperación de la base de datos.

    BACKUP LOG adb TO tailLogBackup WITH NORECOVERY  
    
  2. Restauración parcial del grupo de archivos principal.

    RESTORE DATABASE adb FILEGROUP='Primary' FROM backup   
    WITH PARTIAL, NORECOVERY  
    RESTORE LOG adb FROM log_backup1 WITH NORECOVERY  
    RESTORE LOG adb FROM log_backup2 WITH NORECOVERY  
    RESTORE LOG adb FROM log_backup3 WITH NORECOVERY  
    RESTORE LOG adb FROM tailLogBackup WITH RECOVERY  
    

    En este momento, el grupo principal está en línea. La recuperación de los archivos de los grupos A, By C está pendiente, por lo que estos grupos de archivo están sin conexión.

  3. Restauración en línea de los grupos de archivos A y C.

    Dado que estos datos no están dañados, no es preciso restaurar los grupos de archivos a partir de la copia de seguridad. Sin embargo, es necesario recuperarlos para volver a ponerlos en línea.

    El administrador de la base de datos recupera A y C inmediatamente.

    RESTORE DATABASE adb FILEGROUP='A', FILEGROUP='C' WITH RECOVERY  
    

    En este momento, los grupos de archivos principal, A y C están en línea. Los archivos del grupo B permanecen pendientes de recuperación, con el grupo de archivos sin conexión.

  4. Restauración con conexión del grupo de archivos B.

Los archivos del grupo de archivos B se restauran en cualquier momento a partir de este momento.

Nota

La copia de seguridad del grupo de archivos B se realizó después de cambiar el grupo a solo lectura, por lo que no es necesario poner al día estos archivos.

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

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

Otros ejemplos

Consulte 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)