Instrucciones RESTORE: VERIFYONLY (Transact-SQL)

Se aplica a:SQL ServerAzure SQL Managed Instance

Comprueba la copia de seguridad, pero no la restaura, y comprueba si el conjunto de la copia de seguridad se ha completado y se puede leer en su totalidad. Sin embargo, RESTORE VERIFYONLY no intenta comprobar la estructura de los datos que contienen los volúmenes de la copia de seguridad. En Microsoft SQL Server, RESTORE VERIFYONLY se ha mejorado para realizar comprobaciones adicionales en los datos a fin de aumentar la probabilidad de detectar errores. El objetivo es acercarse lo máximo posible a una operación de restauración real de forma práctica. Para obtener más información, vea la sección Notas.

Si la copia de seguridad es válida, Motor de base de datos de SQL Server devuelve un mensaje de operación correcta.

Nota

Para obtener las descripciones de los argumentos, vea Argumentos de RESTORE (Transact-SQL).

Convenciones de sintaxis de Transact-SQL

Sintaxis

RESTORE VERIFYONLY  
FROM <backup_device> [ ,...n ]  
[ WITH    
 {  
   LOADHISTORY   
  
--Restore Operation Option  
 | MOVE 'logical_file_name_in_backup' TO 'operating_system_file_name'   
          [ ,...n ]   
  
--Backup Set Options  
 | FILE = { backup_set_file_number | @backup_set_file_number }   
 | PASSWORD = { password | @password_variable }   
  
--Media Set Options  
 | MEDIANAME = { media_name | @media_name_variable }   
 | MEDIAPASSWORD = { mediapassword | @mediapassword_variable }  
  
--Error Management Options  
 | { CHECKSUM | NO_CHECKSUM }   
 | { STOP_ON_ERROR | CONTINUE_AFTER_ERROR }  
  
--Monitoring Options  
 | STATS [ = percentage ]   
  
--Tape Options  
 | { REWIND | NOREWIND }   
 | { UNLOAD | NOUNLOAD }    
 } [ ,...n ]  
]  
[;]  
  
<backup_device> ::=  
{   
   { logical_backup_device_name |  
      @logical_backup_device_name_var }  
   | { DISK | TAPE | URL } = { 'physical_backup_device_name' |  
       @physical_backup_device_name_var }   
}  
  

Nota:

URL es el formato que se usa para especificar la ubicación y el nombre del archivo para Microsoft Azure Blob Storage y se admite a partir de SQL Server 2012 (11.x) SP1 CU2. Aunque Microsoft Azure Storage es un servicio, la implementación es similar al disco y la cinta para permitir una experiencia de restauración coherente y sin problemas para los tres dispositivos.

Argumentos

Para obtener las descripciones de los argumentos de RESTORE VERIFYONLY, consulte Argumentos de RESTORE (Transact-SQL).

Notas generales

El conjunto de medios o el conjunto de copia de seguridad debe contener la información mínima correcta para interpretarse como formato de cinta de Microsoft. Si no es así, RESTORE VERIFYONLY se detiene e indica que el formato de la copia de seguridad no es válido.

Entre las comprobaciones realizadas por RESTORE VERIFYONLY, se incluyen las siguientes:

  • Que el conjunto de copia de seguridad ha finalizado y todos los volúmenes pueden leerse.

  • Algunos campos de encabezado de páginas de base de datos, como el Id. de página (como si estuviera a punto de escribir los datos).

  • Suma de comprobación (si está presente en los medios).

  • Comprobar que existe espacio suficiente en los dispositivos de destino.

Nota

RESTORE VERIFYONLY no funciona en una instantánea de base de datos. Para comprobar una instantánea de base de datos antes de realizar una operación de reversión, puede ejecutar DBCC CHECKDB.

Nota

Con las copias de seguridad de instantánea, RESTORE VERIFYONLY confirma la existencia de las instantáneas en las ubicaciones especificadas en el archivo de copia de seguridad. Las copias de seguridad de instantánea son una característica nueva de SQL Server 2016 (13.x). Para obtener más información sobre las copias de seguridad de instantánea, vea Copias de seguridad de instantánea de archivos para archivos de base de datos de Azure.

Seguridad

La operación de copia de seguridad puede especificar opcionalmente contraseñas para un conjunto de medios, para un conjunto de copia de seguridad o para ambos. Si se ha definido una contraseña en un conjunto de medios o un conjunto de copia de seguridad, debe especificar la contraseña o contraseñas correctas en la instrucción RESTORE. Estas contraseñas impiden operaciones de restauración y anexiones no autorizadas de los conjuntos de copia de seguridad en medios que utilizan herramientas de SQL Server. No obstante, la contraseña no impide que se sobrescriba el medio con la opción FORMAT de la instrucción BACKUP.

Importante

El nivel de protección que proporciona esta contraseña es bajo. El objetivo es impedir una restauración incorrecta con las herramientas de SQL Server, ya sea por parte de usuarios autorizados o no autorizados. No impide la lectura de los datos de las copias de seguridad por otros medios o el reemplazo de la contraseña. Esta característica se quitará en una versión futura de SQL Server. Evite usar esta característica en el nuevo trabajo de desarrollo y planee modificar las aplicaciones que actualmente usan esta característica. El procedimiento recomendado para proteger las copias de seguridad es almacenar cintas de copia de seguridad en una ubicación segura o realizar copias de seguridad en archivos de disco protegidos por listas de control de acceso (ACL) adecuadas. Las ACL se deben establecer en el directorio raíz en el que se crean las copias de seguridad.

Permisos

A partir de SQL Server 2008 (10.0.x), para obtener información sobre un conjunto de copia de seguridad o un dispositivo de copia de seguridad, es necesario el permiso CREATE DATABASE. Para obtener más información, vea Permisos de base de datos GRANT (Transact-SQL).

Ejemplos

En el ejemplo siguiente se comprueba la copia de seguridad desde el disco.

RESTORE VERIFYONLY FROM DISK = 'D:\AdventureWorks.bak';
GO

Consulte también

BACKUP (Transact-SQL)
Conjuntos de medios, familias de medios y conjuntos de copias de seguridad (SQL Server)
RESTORE REWINDONLY (Transact-SQL)
RESTORE (Transact-SQL)
Historial de copias de seguridad e información de encabezados (SQL Server)