Compartir a través de


Realizar restauraciones en línea

La restauración en línea sólo se admite en SQL Server 2005 Enterprise Edition y versiones posteriores. En esta versión, la restauración de un archivo, una página o por etapas es en línea de manera predeterminada.

Este tema es relevante para las bases de datos que incluyen varios archivos o grupos de archivos y, en el modelo de recuperación simple, sólo para grupos de archivos de sólo lectura.

La restauración de datos mientras la base de datos está en línea se denomina restauración en línea. Se considera que una base de datos está en línea siempre que el grupo de archivos principal esté en línea, aunque alguno de los grupos de archivos secundarios esté sin conexión. En todos los modelos de recuperación se puede restaurar un archivo sin conexión mientras la base de datos está en línea. En el modelo de recuperación completa, también se pueden restaurar páginas mientras la base de datos está en línea.

Nota

La restauración en línea tiene lugar automáticamente en SQL Server 2005 Enterprise Edition y las versiones posteriores y no requiere ninguna acción por parte del usuario. Si no desea utilizar la restauración en línea, puede desconectar una base de datos antes de iniciar la restauración. Para obtener más información, vea Desconectar una base de datos o un archivo más adelante en este tema.

Durante una operación de restauración de archivos en línea, los archivos que se estén restaurando y su grupo de archivos están sin conexión. Si algunos de dichos archivos está en línea cuando se inicia una restauración en línea, la primera instrucción de la restauración desconecta el grupo de archivos al que pertenece el archivo. Por el contrario, durante una restauración en línea de una página, sólo esa página está sin conexión.

El escenario de restauración en línea implica los siguientes pasos básicos:

  1. Restaure los datos.

  2. Restaure el registro utilizando WITH RECOVERY para la última restauración del registro. Así, se ponen en línea los datos restaurados.

A veces, una transacción sin confirmar no se puede revertir porque los datos necesarios para la operación de reversión están sin conexión durante el inicio. En ese caso, la transacción se difiere. Para obtener más información, vea Transacciones diferidas.

Nota

Si la base de datos está usando en ese momento el modelo de recuperación optimizado para cargas masivas de registros, es recomendable cambiar al modelo de recuperación completa antes de iniciar la restauración en línea. Para obtener más información, vea Cambiar del modelo de recuperación completa al modelo de recuperación optimizado para cargas masivas de registros.

Nota importanteImportante

Si las copias de seguridad se realizaron con varios dispositivos conectados al servidor, será necesario que los mismos dispositivos estén disponibles durante una restauración en línea.

Copias de seguridad de registros para una restauración en línea

En el caso de una restauración en línea, el punto de recuperación es el punto donde se dejaron sin conexión los datos que se van a restaurar o se convirtieron en datos de sólo lectura por última vez. Las copias de seguridad del registro de transacciones que llevan a este punto de recuperación y lo incluyen deben estar todas disponibles. Normalmente, es necesario hacer una copia de seguridad de registros después de ese punto para cubrir el punto de recuperación del archivo. La única excepción tiene lugar durante una restauración en línea de datos de sólo lectura a partir de una copia de seguridad de datos que se realizó después de que los datos pasaran a ser de sólo lectura. En ese caso, no es necesario disponer de una copia de seguridad de registros.

En general, puede realizar copias de seguridad del registro de transacciones mientras la base de datos esté en línea, incluso después de iniciar la secuencia de restauración. El momento oportuno para la realización de la última copia de seguridad de registros depende de las propiedades del archivo que se va a restaurar:

  • En el caso de un archivo en línea de sólo lectura, puede realizar la última copia de seguridad de registros necesaria para la recuperación antes o durante la primera secuencia de restauración. Un grupo de archivos de sólo lectura no necesita copias de seguridad de registros si se realizó una copia de seguridad de datos o diferencial después de haber configurado el grupo de archivos como de sólo lectura.

    Nota

    La información anterior se puede aplicar también a todos los archivos sin conexión.

  • Un caso especial es un archivo de lectura/escritura que estaba en línea cuando se emitió la primera instrucción de restauración y que, a continuación, dicha instrucción dejó sin conexión automáticamente. En este caso, debe realizar una copia de seguridad de registros durante la primera secuencia de restauración (secuencia de una o varias instrucciones RESTORE que restauran, ponen al día y recuperan los datos). Por lo general, esta copia de seguridad de registros debe tener lugar después de que se hayan restaurado todas las copias de seguridad completas y antes de recuperar los datos. No obstante, si hay varias copias de seguridad de archivos para un grupo de archivos concreto, el punto mínimo de copia de seguridad de registros es después de que el grupo de archivos quede sin conexión. Esta copia de seguridad de registros posterior a la restauración de datos capta el punto en el que se dejó el archivo sin conexión y es necesaria porque SQL Server Database Engine (Motor de base de datos de SQL Server) no puede utilizar un registro en línea para una restauración en línea.

    Nota

    Como alternativa, puede dejar el archivo sin conexión manualmente antes de la secuencia de restauración. Para obtener más información, vea "Desconectar una base de datos o un archivo" más adelante en este tema.

Desconectar una base de datos o un archivo

Si no desea utilizar la restauración en línea, puede desconectar la base de datos antes de iniciar la secuencia de restauración; para ello, puede usar uno de los métodos siguientes:

  • En todos los modelos de recuperación puede desconectar la base de datos utilizando la siguiente instrucción ALTER DATABASE:

    ALTER DATABASE database_name SET OFFLINE

  • Si lo desea, en el modelo de recuperación completa, puede forzar que la restauración de un archivo o una página sea sin conexión; para ello, utilizando la siguiente instrucción BACKUP LOG la base de datos se pone en el estado de restauración:

    BACKUP LOG database_name WITH NORECOVERY.

Siempre que la base de datos permanezca sin conexión, todas las restauraciones serán sin conexión.

Ejemplos

Nota

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