Errores posibles de medios durante copia de seguridad y restauración (SQL Server)Possible Media Errors During Backup and Restore (SQL Server)

SE APLICA A: síSQL Server noAzure SQL Database noAzure SQL Data Warehouse noAlmacenamiento de datos paralelos APPLIES TO: yesSQL Server noAzure SQL Database noAzure SQL Data Warehouse noParallel Data Warehouse

SQL Server 2017SQL Server 2017 ofrece la opción de recuperación de una base de datos a pesar de los errores detectados.gives you the option of recovering a database despite detected errors. Un importante mecanismo de detección de errores nuevo es la creación opcional de una suma de comprobación de copia de seguridad que se puede crear mediante una operación de copia de seguridad y validar mediante una operación de restauración.An important new error-detection mechanism is the optional creation of a backup checksum that can be created by a backup operation and validated by a restore operation. Puede controlar si una operación comprueba si hay errores y si la operación se detiene o continúa al encontrar un error.You can control whether an operation checks for errors and whether the operation stops or continues on encountering an error. Si una copia de seguridad contiene una suma de comprobación de copia de seguridad, las instrucciones RESTORE y RESTORE VERIFYONLY pueden comprobar si hay errores.If a backup contains a backup checksum, RESTORE and RESTORE VERIFYONLY statements can check for errors.

Nota

Las copias de seguridad reflejadas proporcionan hasta cuatro copias (reflejos) de un conjunto de medios, ofreciendo copias alternativas para recuperar el sistema de los errores provocados por los medios dañados.Mirrored backups provide up to four copies (mirrors) of a media set, providing alternative copies for recovering from errors caused by damaged media. Para obtener más información, vea Conjuntos de medios de copia de seguridad reflejados (SQL Server).For more information, see Mirrored Backup Media Sets (SQL Server).

Comprobaciones de copia de seguridadBackup Checksums

SQL ServerSQL Server admite tres tipos de sumas de comprobación: una suma de comprobación de páginas, una de bloques de registro y una de copia de seguridad.supports three types of checksums: a checksum on pages, a checksum in log blocks, and a backup checksum. Al generar una suma de comprobación de copia de seguridad, BACKUP comprueba que los datos que se leen de la base de datos son coherentes con cualquier suma de comprobación o indicación de página rasgada de la base de datos.When generating a backup checksum, BACKUP verifies that the data read from the database is consistent with any checksum or torn-page indication that is present in the database.

La instrucción BACKUP calcula opcionalmente una suma de comprobación de copia de seguridad en el flujo de copia de seguridad; si hay una suma de comprobación de página o información de página rasgada en determinada página, al hacer la copia de seguridad de la página, BACKUP comprueba también el estado de página rasgada, la suma de comprobación y el Id. de la página.The BACKUP statement optionally computes a backup checksum on the backup stream; if page-checksum or torn-page information is present on a given page, when backing up the page, BACKUP also verifies the checksum and torn-page status and the page ID, of the page. Al crear una suma de comprobación de copia de seguridad, una operación de copia de seguridad no agrega sumas de comprobación a las páginas.When creating a backup checksum, a backup operation does not add any checksums to pages. Las páginas se copian tal y como están en la base de datos y la copia de seguridad no las modifica.Pages are backed up as they exist in the database, and the pages are unmodified by backup.

Debido a la carga que supone comprobar y generar sumas de comprobación de seguridad, su utilización puede tener consecuencias negativas sobre el rendimiento.Due to the overhead verifying and generating backup checksums, using backup checksums poses a potential performance impact. Pueden quedar afectados tanto la carga de trabajo como el rendimiento de la copia de seguridad.Both the workload and the backup throughput may be affected. Por consiguiente, el uso de la suma de comprobación de copia de seguridad es opcional.Therefore, using backup checksums is optional. Cuando decida si va a generar sumas de comprobación durante una copia de seguridad, supervise cuidadosamente la sobrecarga de CPU en la que se incurrirá, así como el impacto sobre las posibles cargas de trabajo simultáneas del sistema.When deciding to generate checksums during a backup, carefully monitor the CPU overhead incurred as well as the impact on any concurrent workload on the system.

BACKUP no modifica nunca la página de origen del disco ni el contenido de una página.BACKUP never modifies the source page on disk nor the contents of a page.

Cuando se habilitan las sumas de comprobación de copia de seguridad, una operación de copia de seguridad realiza los siguientes pasos:When backup checksums are enabled, a backup operation performs the following steps:

  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 en el nivel de página (suma de comprobación de página o detección de página rasgada), si existe.Before writing a page to the backup media, the backup operation verifies the page-level information (page checksum or torn page detection), if either exists. Si no existe, la copia de seguridad no puede comprobar la página.If neither exists, backup cannot verify the page. Las páginas no comprobadas se incluyen tal cual y su contenido se agrega a la suma de comprobación de copia de seguridad total.Unverified the pages are included as is, and their contents are added to the overall backup checksum.

    Si la operación de copia de seguridad encuentra un error de página durante la comprobación, la copia de seguridad genera un error.If the backup operation encounters a page error during verification, the backup fails.

    Nota

    Para obtener más información acerca de las sumas de comprobación de página y la detección de página rasgada, vea la opción PAGE_VERIFY de la instrucción ALTER DATABASE.For more information about page checksums and torn page detection, see the PAGE_VERIFY option of the ALTER DATABASE statement. Para obtener más información, vea ALTER DATABASE SET Options (Transact-SQL).For more information, see ALTER DATABASE SET Options (Transact-SQL).

  2. Aunque se incluyan sumas de comprobación de página, BACKUP genera una suma de comprobación de copia de seguridad independiente para las secuencias de copia de seguridad.Regardless of whether page checksums are present, BACKUP generates a separate backup checksum for the backup streams. Opcionalmente, las operaciones de restauración pueden utilizar la suma de comprobación de copia de seguridad para confirmar que la copia de seguridad no está dañada.Restore operations can optionally use the backup checksum to validate that the backup is not corrupted. La suma de comprobación de copia de seguridad se almacena en el medio de copia de seguridad y no en las páginas de la base de datos.The backup checksum is stored on the backup media, not on the database pages. La suma de comprobación de copia de seguridad se puede utilizar opcionalmente en el momento de la restauración.The backup checksum can optionally be used at restore time.

  3. El conjunto de copia de seguridad se marca para indicar que contiene sumas de comprobación de copia de seguridad (en la columna has_backup_checksums de msdb..backupset) .The backup set is flagged as containing backup checksums (in the has_backup_checksums column of msdb..backupset). Para obtener más información, vea backupset (Transact-SQL).For more information, see backupset (Transact-SQL).

Le escuchamos: Si encuentra algo obsoleto o incorrecto en este artículo, como un paso o un ejemplo de código, indíquenoslo.We are listening: If you find something outdated or incorrect in this article, such as a step or a code example, please tell us. Puede hacer clic en el botón Esta página situado en la sección Comentarios en la parte inferior de esta página.You can click the This page button in the Feedback section at the bottom of this page. Leemos todos los elementos de comentarios sobre SQL, normalmente el día siguiente.We read every item of feedback about SQL, typically the next day. Gracias.Thanks.

Durante una operación de restauración, si hay sumas de comprobación de copia de seguridad en los medios de copia de seguridad, de forma predeterminada, las operaciones RESTORE y RESTORE VERIFYONLY comprueban las sumas de comprobación de copia de seguridad y las sumas de comprobación de página.During a restore operation, if backup checksums are present on the backup media, by default, both the RESTORE and RESTORE VERIFYONLY statements verify the backup checksums and page checksums. Si no hay ninguna suma de comprobación de copia de seguridad, cualquiera de las dos operaciones de restauración continúa sin realizar ninguna comprobación; esto se debe a que, sin una suma de comprobación de copia de seguridad, la restauración no puede comprobar de forma confiable las sumas de comprobación de página.If there is no backup checksum, either restore operation proceeds without any verification; this is because without a backup checksum, restore cannot reliably verify page checksums.

Respuesta a errores de suma de comprobación de página durante una operación de copia de seguridad o restauraciónResponse to Page Checksum Errors During a Backup or Restore Operation

De forma predeterminada, después de encontrar un error de suma de comprobación de página, una operación BACKUP o RESTORE produce un error y una operación VERIFYONLY continúa.By default, after encountering a page checksum error, a BACKUP or RESTORE operation fails and a RESTORE VERIFYONLY operation continues. Sin embargo, se puede controlar si una operación dada se detiene al encontrar un error o continúa de la mejor manera posible.However, you can control whether a given operation fails on encountering an error or continues as best it can.

Si una operación BACKUP continúa después de encontrar errores, la operación realiza los siguientes pasos:If a BACKUP operation continues after encountering errors, the operation performs the following steps:

  1. Indica en el conjunto de copia de seguridad de los medios de copia de seguridad que hay errores y realiza el seguimiento de la página en la tabla suspect_pages de la base de datos msdb.Flags the backup set on the backup media as containing errors and tracks the page in the suspect_pages table in the msdb database. Para obtener más información, vea suspect_pages (Transact-SQL).For more information, see suspect_pages (Transact-SQL).

  2. Registra el error en el registro de errores de SQL Server.Logs the error in the SQL Server error log.

  3. Marca el conjunto de copia de seguridad como conjunto que contiene este tipo de error (en la columna is_damaged de msdb.backupset) .Marks the backup set as containing this type of error (in the is_damaged column of msdb.backupset). Para obtener más información, vea backupset (Transact-SQL).For more information, see backupset (Transact-SQL).

  4. Emite un mensaje que indica que la copia de seguridad se generó correctamente, pero contiene errores de página.Issues a message that the backup was successfully generated, but contains page errors.

Tareas relacionadasRelated Tasks

Para habilitar o deshabilitar sumas de comprobación de copia de seguridadTo enable or disable backup checksums

Para controlar la respuesta a un error durante una operación de copia de seguridadTo control the response to a error during a backup operation

Consulte tambiénSee Also

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