Instrucciones RESTORE: HEADERONLY (Transact-SQL)
Se aplica a: SQL Server Azure SQL Managed Instance
Devuelve un conjunto de resultados que contiene toda la información de encabezado de copia de seguridad de todos los conjuntos de copia de seguridad de un dispositivo de copia de seguridad determinado en SQL Server.
Nota:
Para obtener las descripciones de los argumentos, vea Argumentos de RESTORE (Transact-SQL).
Convenciones de sintaxis de Transact-SQL
Sintaxis
RESTORE HEADERONLY
FROM <backup_device>
[ WITH
{
-- Backup set options
FILE = { backup_set_file_number | @backup_set_file_number }
| PASSWORD = { password | @password_variable }
| [ METADATA_ONLY | SNAPSHOT ] [ DBNAME = { database_name | @database_name_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 }
-- 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 Azure Blob Storage y se admite a partir de SQL Server 2012 (11.x) SP 1 CU 2. Aunque Azure Storage es un servicio, la implementación es similar al disco y la cinta para permitir una experiencia de restauración coherente y perfecta para los tres dispositivos.
Argumentos
Para las descripciones de los argumentos RESTORE HEADERONLY
, consulte Argumentos RESTORE (Transact-SQL).
Conjuntos de resultados
Por cada copia de seguridad que hay en un dispositivo determinado, el servidor envía una fila de información de encabezado con las siguientes columnas:
Nombre de la columna | Tipo de datos | Descripción de los conjuntos de copia de seguridad de SQL Server |
---|---|---|
BackupName 1 |
nvarchar(128) | Nombre del conjunto de copia de seguridad. |
BackupDescription |
nvarchar(255) | Descripción del conjunto de copia de seguridad. Puede ser NULL. |
BackupType |
smallint | Tipo de copia de seguridad: 1 = Base de datos 2 = Registro de transacciones 4 = Archivo 5 = Base de datos diferencial 6 = Archivo diferencial 7 = Parcial 8 = Parcial diferencial |
ExpirationDate |
datetime | Fecha de expiración del conjunto de copia de seguridad. |
Compressed |
bit | Si el conjunto de copia de seguridad se comprime con el sistema de compresión por software: 0 = No 1 = Sí |
Position |
smallint | Posición del conjunto de copia de seguridad en el volumen (para utilizarlo con la opción FILE =). |
DeviceType |
tinyint | Número correspondiente al dispositivo utilizado para la operación de copia de seguridad. Disco: - 2 = lógico - 102 = físico Cinta: - 5 = lógico - 105 = físico Dispositivo virtual: - 7 = lógico - 107 = físico Dirección URL: - 9 = lógico - 109 = físico Los nombres y números de los dispositivos lógicos están en sys.backup_devices . Para más información, consulte sys.backup_devices. |
UserName |
nvarchar(128) | Nombre del usuario que ha ejecutado la operación de copia de seguridad. |
ServerName |
nvarchar(128) | Nombre del servidor que escribió el conjunto de copia de seguridad. |
DatabaseName |
nvarchar(128) | Nombre de la base de datos de la que se realizó la copia de seguridad. |
DatabaseVersion |
int | Versión de la base de datos de la que se creó la copia de seguridad. |
DatabaseCreationDate |
datetime | Fecha y hora en que se creó la base de datos. |
BackupSize |
numeric(20,0) | Tamaño de la copia de seguridad, en bytes. |
FirstLSN |
numeric(25,0) | Número de secuencia de registro de la primera entrada del registro del conjunto de copia de seguridad. |
LastLSN |
numeric(25,0) | Número de secuencia de registro de la siguiente entrada del registro después del conjunto de copia de seguridad. |
CheckpointLSN |
numeric(25,0) | Número de flujo de registro del punto de comprobación más reciente en el momento en que se creó la copia de seguridad. |
DatabaseBackupLSN |
numeric(25,0) | Número de secuencia de registro de la copia de seguridad completa más reciente de la base de datos.DatabaseBackupLSN es el "inicio del punto de control" que se desencadena cuando se inicia la copia de seguridad. Este número de secuencia de registro coincide con FirstLSN si la copia de seguridad se realiza cuando la base de datos está inactiva y no hay replicación configurada. |
BackupStartDate |
datetime | Fecha y hora en que comenzó la operación de copia de seguridad. |
BackupFinishDate |
datetime | Fecha y hora en que terminó la operación de copia de seguridad. |
SortOrder |
smallint | Criterio de ordenación del servidor. Esta columna solo es válida para copias de seguridad de bases de datos. Se proporciona para mantener la compatibilidad con versiones anteriores. |
CodePage |
smallint | Página de códigos del servidor o juego de caracteres utilizado por el servidor. |
UnicodeLocaleId |
int | Opción de configuración de Id. de configuración regional Unicode del servidor utilizada para ordenar datos de caracteres Unicode. Se proporciona para mantener la compatibilidad con versiones anteriores. |
UnicodeComparisonStyle |
int | Opción de configuración para el estilo de comparación Unicode del servidor, que proporciona control adicional sobre el orden de los datos Unicode. Se proporciona para mantener la compatibilidad con versiones anteriores. |
CompatibilityLevel |
tinyint | Configuración del nivel de compatibilidad de la base de datos de la que se creó la copia de seguridad. |
SoftwareVendorId |
int | Número de identificación del proveedor de software. En SQL Server, este número es 4608 (o su equivalente hexadecimal 0x1200 ). |
SoftwareVersionMajor |
int | Número de versión principal del servidor donde se creó el conjunto de copia de seguridad. |
SoftwareVersionMinor |
int | Número de versión secundario del servidor donde se creó el conjunto de copia de seguridad. |
SoftwareVersionBuild |
int | Número de compilación del servidor donde se creó el conjunto de copia de seguridad. |
MachineName |
nvarchar(128) | Nombre del equipo donde se realizó la operación de copia de seguridad. |
Flags |
int | Significados de los bits de las distintas marcas: - 1 = La copia de seguridad de registros contiene registros de operaciones masivas. - 2 = Copia de seguridad de instantánea. - 4 = La base de datos era de solo lectura en el momento de la copia de seguridad. - 8 = La base de datos estaba en modo de usuario único en el momento de la copia de seguridad. - 16 = La copia de seguridad contiene sumas de comprobación de la copia de seguridad. - 32 = La base de datos estaba dañada cuando se realizó la copia de seguridad, pero se solicitó que continuase a pesar de los errores. - 64 = Copia del final del registro. - 128 = Copia del final del registro con metadatos incompletos. - 256 = Copia del final del registro con NORECOVERY. Importante: Se recomienda que, en lugar de Flags , use las columnas booleanas individuales (desde HasBulkLoggedData hasta IsCopyOnly en esta tabla). |
BindingID |
uniqueidentifier | Id. de enlace de la base de datos. Este valor corresponde a database_guid en sys.database_recovery_status . Cuando se restaura una base de datos, se asigna un valor nuevo. Vea también FamilyGUID . |
RecoveryForkID |
uniqueidentifier | Id. de la bifurcación de recuperación final. Esta columna corresponde a last_recovery_fork_guid en la tabla backupset.En las copias de seguridad de datos, RecoveryForkID es igual que FirstRecoveryForkID . |
Collation |
nvarchar(128) | Intercalación que utiliza la base de datos. |
FamilyGUID |
uniqueidentifier | Id. de la base de datos original cuando se creó. Este valor permanece invariable cuando se restaura la base de datos. |
HasBulkLoggedData |
bit | 1 = Copia del registro que contiene registros de operaciones masivas. |
IsSnapshot |
bit | 1 = Copia de seguridad de instantánea. |
IsReadOnly |
bit | 1 = La base de datos era de solo lectura en el momento de la copia de seguridad. |
IsSingleUser |
bit | 1 = La base de datos era de un solo usuario en el momento de la copia de seguridad. |
HasBackupChecksums |
bit | 1 = La copia de seguridad contiene sumas de comprobación de copia de seguridad. |
IsDamaged |
bit | 1 = La base de datos estaba dañada cuando se realizó la copia de seguridad, pero se solicitó que continuase a pesar de los errores. |
BeginsLogChain |
bit | 1 = Es el primer elemento de una cadena continua de copias de seguridad de registros. Una cadena de registro empieza por la primera copia de seguridad de registros realizada después de la creación de la base de datos o cuando se cambia del modelo de recuperación simple al modelo de recuperación completo o al modelo de recuperación optimizado para cargas masivas de registros. |
HasIncompleteMetaData |
bit | 1 = Copia del final del registro con metadatos incompletos. Para más información sobre las copias del final del registro con metadatos incompletos, vea Copias del final del registro (SQL Server). |
IsForceOffline |
bit | 1 = Copia de seguridad realizada con NORECOVERY; el proceso de copia de seguridad dejó la base de datos sin conexión. |
IsCopyOnly |
bit | 1 = Copia de seguridad de solo copia. Una copia de seguridad de solo copia no afecta a los procedimientos de copia de seguridad y restauración generales de la base de datos. Para obtener más información, consulte Copias de seguridad de solo copia (SQL Server). |
FirstRecoveryForkID |
uniqueidentifier | Id. de la bifurcación de recuperación inicial. Esta columna corresponde a first_recovery_fork_guid en la tabla backupset.En las copias de seguridad de datos, FirstRecoveryForkID es igual que RecoveryForkID . |
ForkPointLSN |
numeric(25,0) | Si FirstRecoveryForkID no es igual que RecoveryForkID , este valor es el número de secuencia de registro del punto de bifurcación. De lo contrario, este valor es NULL. |
RecoveryModel |
nvarchar(60) | Modelo de recuperación de la base de datos; uno de los siguientes valores: - FULL - BULK-LOGGED - SIMPLE |
DifferentialBaseLSN |
numeric(25,0) | Para una copia de seguridad diferencial con una única base, el valor es el FirstLSN de la base diferencial. En la copia diferencial se incluyen los cambios con número de secuencia de registro mayor o igual que DifferentialBaseLSN .Para una copia de seguridad diferencial con varias copias de seguridad base, el valor es NULL y el LSN de la copia de seguridad base debe determinarse en el nivel de archivo. Para obtener más información, vea RESTORE FILELISTONLY. Para los tipos de copia de seguridad no diferenciales, el valor es siempre NULL. Para obtener más información, vea Copias de seguridad diferenciales (SQL Server). |
DifferentialBaseGUID |
uniqueidentifier | Para una copia de seguridad diferencial con una única copia de seguridad base, el valor es el identificador único de la base diferencial. Para las copias de seguridad diferenciales con varias copias de seguridad base, el valor es NULL y la base diferencial debe determinarse por archivo. Para los tipos de copia de seguridad no diferenciales, el valor es NULL. |
BackupTypeDescription |
nvarchar(60) | Tipo de copia de seguridad como cadena, uno de los siguientes valores: - DATABASE - TRANSACTION LOG - FILE OR FILEGROUP - DATABASE DIFFERENTIAL - FILE DIFFERENTIAL PARTIAL - PARTIAL DIFFERENTIAL |
BackupSetGUID |
uniqueidentifier | Número de identificación único del conjunto de copia de seguridad mediante el cual se identifica en los medios. Puede ser NULL. |
CompressedBackupSize |
bigint | Recuento de bytes del conjunto de copia de seguridad. Para las copias de seguridad sin comprimir, este valor es igual que BackupSize .Para calcular la relación de compresión, use CompressedBackupSize y BackupSize .Durante una actualización de msdb , se establece este valor para que coincida con el valor de la columna BackupSize . |
containment |
tinyint | Se aplica a: SQL Server 2012 (11.x) y versiones posteriores. Indica el estado de contención de la base de datos. 0 = el estado de contención de la base de datos es OFF 1 = la base de datos está en estado de contención parcial |
KeyAlgorithm |
nvarchar(32) | Se aplica a: SQL Server 2014 (12.x) CU 1 y versiones posteriores. Algoritmo de cifrado usado para cifrar la copia de seguridad. NO_Encryption indica que no se cifró la copia de seguridad. Cuando no se puede determinar el valor correcto, el valor debe ser NULL. |
EncryptorThumbprint |
varbinary(20) | Se aplica a: SQL Server 2014 (12.x) CU 1 y versiones posteriores. La huella digital del sistema de cifrado que se puede utilizar para encontrar el certificado o la clave asimétrica en la base de datos. Si la copia de seguridad no se cifró, este valor es NULL. |
EncryptorType |
nvarchar(32) | Se aplica a: SQL Server 2014 (12.x) CU 1 y versiones posteriores. Tipo de sistema de cifrado usado: certificado o clave asimétrica. Si la copia de seguridad no se cifró, este valor es NULL. |
LastValidRestoreTime |
datetime | Se aplica a: SQL Server 2022 (16.x) y versiones posteriores. La última hora de restauración válida. |
TimeZone |
nvarchar(32) | Se aplica a: SQL Server 2022 (16.x) y versiones posteriores. Zona horaria del servidor desde la que se realizó la copia de seguridad. |
CompressionAlgorithm |
nvarchar(32) | Se aplica a: SQL Server 2022 (16.x) y versiones posteriores. Identifica el algoritmo de compresión utilizado para comprimir el archivo de copia de seguridad. El valor predeterminado es MS_XPRESS. Para obtener más información, vea BACKUP. |
1 Si se definen contraseñas para los conjuntos de copia de seguridad, RESTORE HEADERONLY
solo muestra información completa para el conjunto de copia de seguridad cuya contraseña coincida con la opción PASSWORD
especificada en el comando. RESTORE HEADERONLY
también muestra información completa para los conjuntos de copia de seguridad no protegidos. La columna BackupName
de los otros conjuntos de copia de seguridad protegidos con contraseña que hay en los medios se establece en 'Password Protected'
y todas las demás columnas son NULL.
Comentarios
Un cliente puede utilizar RESTORE HEADERONLY
para obtener toda la información de encabezado de todas las copias de seguridad de un dispositivo determinado. Para cada copia de seguridad del dispositivo de copia de seguridad, el servidor envía la información del encabezado como una fila.
RESTORE HEADERONLY
consulta todos los conjuntos de copia de seguridad en los medios. Por tanto, puede llevar algún tiempo generar este conjunto de resultados si se utilizan unidades de cinta de alta capacidad. Para tener una visión rápida de los medios sin obtener información acerca de cada conjunto de copia de seguridad, utilice RESTORE LABELONLY
o especifique FILE = <backup_set_file_number>
.
Debido a la naturaleza del formato de cinta de Microsoft, es posible que los conjuntos de copia de seguridad de otros programas de software ocupen espacio en los mismos medios que los conjuntos de copia de seguridad del servidor de SQL Server. El conjunto de resultados que devuelve RESTORE HEADERONLY
contiene una fila por cada uno de estos otros conjuntos de copia de seguridad.
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
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 devuelve la información del encabezado del archivo de disco C:\AdventureWorks-FullBackup.bak
.
RESTORE HEADERONLY
FROM DISK = N'C:\AdventureWorks-FullBackup.bak';
GO
Vea también
- BACKUP (Transact-SQL)
- backupset (Transact-SQL)
- RESTORE REWINDONLY (Transact-SQL)
- RESTORE VERIFYONLY (Transact-SQL)
- RESTORE (Transact-SQL)
- Historial de copias de seguridad e información de encabezados (SQL Server)
- Habilitar o deshabilitar sumas de comprobación de copia de seguridad durante copia de seguridad o restauración (SQL Server)
- Conjuntos de medios, familias de medios y conjuntos de copias de seguridad (SQL Server)
- Modelos de recuperación (SQL Server)