Compartir a través de


Posibles errores multimedia durante la copia de seguridad y restauración (SQL Server)

SQL Server 2014 le ofrece la opción de recuperar una base de datos a pesar de los errores detectados. Un importante nuevo mecanismo de detección de errores es la posibilidad de crear opcionalmente una suma de comprobación de la copia de seguridad, que una operación de copia de seguridad puede crear y validar mediante una operación de restauración. Puede controlar si una operación comprueba si hay errores y si la operación se detiene o continúa detectando un error. Si una copia de seguridad contiene un checksum de respaldo, las instrucciones RESTORE y RESTORE VERIFYONLY pueden comprobar errores.

Nota:

Las copias de seguridad reflejadas proporcionan hasta cuatro copias (reflejos) de un conjunto de medios, lo que proporciona copias alternativas para recuperarse de errores causados por medios dañados. Para obtener más información, vea Conjuntos de medios de copia de seguridad reflejados (SQL Server).

Sumas de verificación de copias de seguridad

SQL Server admite tres tipos de sumas de comprobación: una suma de comprobación en páginas, una suma de comprobación en bloques de registro y una suma de comprobación de copia de seguridad. Al generar una suma de comprobación de la copia de seguridad, BACKUP comprueba que los datos leídos de la base de datos son coherentes con cualquier suma de comprobación o indicación de página dañada que esté presente en la base de datos.

La instrucción BACKUP calcula opcionalmente una suma de comprobación de copia de seguridad en el flujo de copia de seguridad; si la información de la suma de comprobación de la página o de página fragmentada está presente en una página determinada, al realizar una copia de seguridad de la página, BACKUP también comprueba la suma de comprobación y el estado de la página fragmentada y el identificador de página. Al crear una suma de comprobación para una copia de seguridad, la operación de copia de seguridad no añade sumas de comprobación a las páginas. Se realiza una copia de seguridad de las páginas a medida que existen en la base de datos y las páginas no se modifican mediante la copia de seguridad.

Debido al coste adicional de verificar y generar sumas de comprobación de copia de seguridad, el uso de estas sumas puede afectar negativamente al rendimiento. Tanto la carga de trabajo como el rendimiento de la copia de seguridad pueden verse afectados. Por lo tanto, el uso de comprobaciones de respaldo es opcional. Al decidir generar sumas de comprobación durante una copia de seguridad, supervise cuidadosamente la sobrecarga de CPU en la que se incurre, así como el impacto en cualquier carga de trabajo simultánea del sistema.

BACKUP nunca modifica la página de origen en el disco ni el contenido de una página.

Cuando se activan los códigos de verificación para la copia de seguridad, se realiza la operación de copia de seguridad en los siguientes pasos:.

  1. Antes de escribir una página en los medios de copia de seguridad, la operación de copia de seguridad comprueba la información a nivel de página (suma de comprobación de página o detección de página rasgada), si cualquiera de los dos existe. Si no existe ninguno, la copia de seguridad no puede comprobar la página. Las páginas no comprobadas se incluyen tal como están, y su contenido se agrega a la sumatoria de verificación de la copia de seguridad total.

    Si la operación de copia de seguridad encuentra un error de página durante la comprobación, se produce un error en la copia de seguridad.

    Nota:

    Para obtener más información sobre las sumas de comprobación de página y la detección de páginas rasgadas, consulte la opción PAGE_VERIFY de la instrucción ALTER DATABASE. Para más información, vea Opciones de ALTER DATABASE SET (Transact-SQL).

  2. Independientemente de si están presentes las sumas de comprobación de página, BACKUP genera una suma de comprobación independiente para los flujos de copia de seguridad. Las operaciones de restauración pueden usar opcionalmente la suma de comprobación de copia de seguridad para validar que la copia de seguridad no está dañada. La suma de comprobación de copia de seguridad se almacena en los medios de copia de seguridad, no en las páginas de la base de datos. La suma de comprobación de copia de seguridad se puede usar opcionalmente en el momento de la restauración.

  3. El conjunto de copia de seguridad se ha marcado como conteniendo sumas de comprobación de copia de seguridad (en la columna has_backup_checksums de msdb..backupset). Para obtener más información, consulte conjunto de copias de seguridad (Transact-SQL).

Durante una operación de restauración, si las sumas de comprobación de copia de seguridad están presentes en los medios de copia de seguridad, de forma predeterminada, las instrucciones RESTORE y RESTORE VERIFYONLY comprueban las sumas de comprobación de copia de seguridad y las sumas de comprobación de página. Si no hay ninguna suma de comprobación de copia de seguridad, la operación de restauración continúa sin ninguna verificación; esto se debe a que sin una suma de comprobación de copia de seguridad, la restauración no puede verificar de forma confiable las sumas de comprobación de las páginas.

Respuesta a errores de suma de comprobación de página durante una operación de copia de seguridad o restauración

De forma predeterminada, después de encontrar un error de suma de comprobación de página, una operación BACKUP o RESTORE fallará y una operación de verificación RESTORE VERIFYONLY continuará. Sin embargo, puede controlar si una operación determinada falla al encontrar un error o continúa lo mejor que pueda.

Si una operación BACKUP continúa después de encontrar errores, la operación realiza los pasos siguientes:

  1. Marca el conjunto de backup en el medio de backup como si contuviera errores y rastrea la página en la tabla suspect_pages de la base de datos msdb. Para obtener más información, vea suspect_pages (Transact-SQL).

  2. Registra el error en el registro de errores de SQL Server.

  3. Marca el conjunto de copia de seguridad como que contiene este tipo de error (en la columna is_damaged de msdb.backupset). Para obtener más información, consulte conjunto de copias de seguridad (Transact-SQL).

  4. Emite un mensaje que indica que la copia de seguridad se generó correctamente, pero contiene errores de página.

Tareas relacionadas

Para habilitar o inhabilitar checksums de copia de seguridad

Para controlar la respuesta a un error durante una operación de copia de seguridad

Véase también

ALTER DATABASE (Transact-SQL)
BACKUP (Transact-SQL)
backupset (Transact-SQL)
Conjuntos de medios de copia de seguridad reflejados (SQL Server)
RESTORE (Transact-SQL)
RESTORE VERIFYONLY (Transact-SQL)