Crear copias de seguridad de las bases de datos de sólo lectura

Este tema presenta los aspectos necesarios para realizar copias de seguridad de bases de datos de sólo lectura o que eran de sólo lectura cuando se hizo la última copia de seguridad.

Para una base de datos de sólo lectura, el archivo principal es inaccesible y no se puede actualizar durante una copia de seguridad. Para una base de datos de sólo lectura se recomienda que realice una copia de seguridad completa. Sin embargo, si una base de datos alterna entre sólo lectura y lectura/escritura, puede ser útil hacer una copia de seguridad de la base de datos cuando sea de lectura/escritura. En ese caso, mientras la base de datos sea de lectura/escritura, si la magnitud de los cambios es pequeña, puede realizar copias de seguridad diferenciales.

Nota

No se puede cambiar la propiedad IsReadOnly de un grupo de archivos durante una copia de seguridad. Intentarlo provoca un error.

Copias de seguridad parciales después de cambiar el permiso de una base de datos a lectura/escritura

Una copia de seguridad parcial de una base de datos de sólo lectura incluye sólo el grupo de archivos principal. Si se modifica posteriormente el permiso de la base de datos a lectura/escritura, es posible que se creen grupos de archivos secundarios de lectura/escritura que no figuren en la copia de seguridad parcial. Si es así e intenta realizar una copia de seguridad diferencial parcial, el proceso producirá un error. Antes de poder efectuar una copia de seguridad diferencial parcial de la base de datos, es preciso crear otra copia de seguridad parcial. La nueva copia de seguridad parcial contiene todos los grupos de archivos secundarios de lectura /escritura y puede servir como base para las copias de seguridad diferenciales parciales.

Copias de seguridad diferencias de bases de datos de sólo lectura

En el caso de bases de datos de sólo lectura, resulta más fácil gestionar las copias de seguridad completas por sí solas que cuando se utilizan junto copias de seguridad diferenciales. Cuando una base de datos es de sólo lectura, las operaciones de copia de seguridad y de otro tipo no tienen capacidad para modificar los metadatos del archivo. Por lo tanto, los metadatos que precisan las copias de seguridad diferenciales, como el número de secuencia de registro en el que comienza la copia de seguridad diferencial (el número LSN base diferencial), se almacenan en la base de datos maestra. Si la base diferencial se establece cuando la base de datos es de sólo lectura, el mapa de bits diferencial indicará más cambios de los que en realidad han ocurrido desde que se realizó la copia de seguridad de base. La copia de seguridad lee los datos adicionales, pero éstos no se escriben en la misma, dado que el differential_base_lsn almacenado en la tabla del sistema backupset se utiliza para determinar si los datos han cambiado en realidad desde que se creó la base.

Cuando se vuelve a generar, restaurar o separar y adjuntar una base de datos de sólo lectura, se pierde la información de base diferencial. Esto ocurre porque la base de datos maestra no está sincronizada con la base de datos de usuario. SQL Server Database Engine (Motor de base de datos de SQL Server) no puede detectar ni evitar este problema. Las copias de seguridad diferenciales que se realicen con posterioridad no se basan en la copia de seguridad completa más reciente, por lo que pueden proporcionar resultados inesperados. Para establecer una nueva base diferencial se recomienda crear una copia de seguridad completa de base de datos.

Prácticas recomendadas para utilizar copias de seguridad diferenciales con una base de datos de sólo lectura

Después de crear una copia de seguridad completa de una base de datos de sólo lectura, deberá crear una copia de seguridad de la base de datos maestra si luego pretende crear una copia de seguridad diferencial.

Si se pierde la base de datos maestra, restáurela antes de restaurar las copias de seguridad diferenciales de una base de datos de usuario.

Si separa y adjunta una base de datos de sólo lectura de la que tiene previsto realizar copias de seguridad diferenciales con posterioridad, realice tan pronto como sea posible una copia de seguridad completa de su base de datos de sólo lectura y de la base de datos maestra.