RESTORE HEADERONLY (Transact-SQL)

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.

Nota

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

Icono de vínculo a temasConvenciones 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 } 

--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 } = { 'physical_backup_device_name' |
       @physical_backup_device_name_var } 
} 

Argumentos

Para obtener descripciones de los argumentos de RESTORE HEADERONLY, vea RESTORE (argumentos, 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:

Nota

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.

Nota

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 de Microsoft SQL Server. El conjunto de resultados que devuelve RESTORE HEADERONLY contiene una fila por cada uno de estos otros conjuntos de copia de seguridad.

Nombre de columna

Tipo de datos

Descripción de los conjuntos de copia de seguridad de SQL Server

Descripción de otros conjuntos de copia de seguridad

BackupName

nvarchar(128)

Nombre del conjunto de copia de seguridad.

Nombre del conjunto de datos.

BackupDescription

nvarchar(255)

Descripción del conjunto de copia de seguridad.

Descripción del conjunto de datos.

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

Tipo de copia de seguridad:

1 = Normal

5 = Diferencial

16 = Incremental

17 = Diaria

ExpirationDate

datetime

Fecha de expiración del conjunto de copia de seguridad.

NULL

Compressed

BYTE(1)

Si el conjunto de copia de seguridad se comprime con el sistema de compresión por software:

0 = No

1 = Sí

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 =).

Posición del conjunto de copia de seguridad en el volumen.

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ógica

105 = Física

Dispositivo virtual:

7 = Lógico

107 = Físico

Los nombres de dispositivos lógicos y los números de dispositivo se encuentran en sys.backup_devices; para obtener más información, vea sys.backup_devices (Transact-SQL).

NULL

UserName

nvarchar(128)

Nombre del usuario que ha ejecutado la operación de copia de seguridad.

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.

NULL

DatabaseName

nvarchar(128)

Nombre de la base de datos de la que se realizó la copia de seguridad.

NULL

DatabaseVersion

int

Versión de la base de datos de la que se creó la copia de seguridad.

NULL

DatabaseCreationDate

datetime

Fecha y hora en que se creó la base de datos.

NULL

BackupSize

numeric(20,0)

Tamaño de la copia de seguridad, en bytes.

NULL

FirstLSN

numeric(25,0)

Número de secuencia de registro de la primera entrada del registro del conjunto de copia de seguridad.

NULL

LastLSN

numeric(25,0)

Número de secuencia de registro de la siguiente entrada del registro después del conjunto de copia de seguridad.

NULL

CheckpointLSN

numeric(25,0)

Número de secuencia de registro del punto de comprobación más reciente en el momento en que se creó la copia de seguridad.

NULL

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 comprobación” que se desencadena cuando comienza la copia de seguridad. Este LSN coincide con FirstLSN si la copia de seguridad se realiza cuando la base de datos está inactiva y no está configurada la replicación.

NULL

BackupStartDate

datetime

Fecha y hora en que comenzó la operación de copia de seguridad.

Fecha de escritura del medio.

BackupFinishDate

datetime

Fecha y hora en que terminó la operación de copia de seguridad.

Fecha de escritura del medio.

SortOrder

smallint

Criterio de ordenación del servidor. Esta columna sólo es válida para copias de seguridad de bases de datos. Se proporciona para mantener la compatibilidad con versiones anteriores.

NULL

CodePage

smallint

Página de códigos del servidor o juego de caracteres utilizado por el servidor.

NULL

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.

NULL

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.

NULL

CompatibilityLevel

tinyint

Configuración del nivel de compatibilidad de la base de datos de la que se creó la copia de seguridad.

NULL

SoftwareVendorId

int

Número de identificación del proveedor de software. Para SQL Server, este número es 4608 (o su equivalente hexadecimal 0x1200).

Número de identificación del proveedor de software.

SoftwareVersionMajor

int

Número de versión principal del servidor donde se creó el conjunto de copia de seguridad.

Número de versión principal del software con el que 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.

Número de versión secundario del software con el que 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.

NULL

MachineName

nvarchar(128)

Nombre del equipo donde se realizó la operación de copia de seguridad.

Tipo de equipo donde se realizó la operación de copia de seguridad.

Flags

int

Significados de los bits de Flags si se establece en 1:

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 sólo 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 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.

Nota importanteImportante
Se recomienda que, en lugar de Flags, utilice las columnas booleanas individuales que se enumeran a continuación, desde HasBulkLoggedData hasta IsCopyOnly.

NULL

BindingID

uniqueidentifier

Id. de enlace de la base de datos. Corresponde a sys.database_recovery_statusdatabase_guid. Cuando se restaura una base de datos, se asigna un valor nuevo. Vea también FamilyGUID (a continuación).

NULL

RecoveryForkID

uniqueidentifier

Id. de la bifurcación de recuperación final. Esta columna corresponde a last_recovery_fork_guid en la tabla backupset.

Para las copias de seguridad de datos, RecoveryForkID es igual que FirstRecoveryForkID.

NULL

Collation

nvarchar(128)

Intercalación que utiliza la base de datos.

NULL

FamilyGUID

uniqueidentifier

Id. de la base de datos original cuando se creó. Este valor permanece invariable cuando se restaura la base de datos.

NULL

HasBulkLoggedData

bit

1 = Copia del registro que contiene registros de operaciones masivas.

NULL

IsSnapshot

bit

1 = Copia de seguridad de instantánea.

NULL

IsReadOnly

bit

1 = La base de datos era de sólo lectura en el momento de la copia de seguridad.

NULL

IsSingleUser

bit

1 = La base de datos era de un solo usuario en el momento de la copia de seguridad.

NULL

HasBackupChecksums

bit

1 = La copia de seguridad contiene sumas de comprobación de copia de seguridad.

NULL

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.

NULL

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 crear la base de datos o cuando se cambia del modelo de recuperación simple al completo o al modelo de recuperación optimizado para cargas masivas de registros.

NULL

HasIncompleteMetaData

bit

1 = Copia del final del registro con metadatos incompletos.

Para obtener información acerca de las copias del final del registro con metadatos incompletos, vea Copias del final del registro.

NULL

IsForceOffline

bit

1 = Copia de seguridad realizada con NORECOVERY; el proceso de copia de seguridad dejó la base de datos sin conexión.

NULL

IsCopyOnly

bit

1 = Copia de seguridad de sólo copia.

Una copia de seguridad de sólo copia no afecta a los procedimientos de copias de seguridad y restauración generales de la base de datos. Para obtener más información, vea Copias de seguridad de solo copia.

NULL

FirstRecoveryForkID

uniqueidentifier

Id. de la bifurcación de recuperación inicial. Esta columna corresponde a first_recovery_fork_guid en la tabla backupset.

Para las copias de seguridad de datos, FirstRecoveryForkID es igual que RecoveryForkID.

NULL

ForkPointLSN

numeric(25,0) NULL

Si FirstRecoveryForkID no es igual que RecoveryForkID, éste es el número de secuencia de registro del punto de bifurcación. De lo contrario, este valor es NULL.

NULL

RecoveryModel

nvarchar(60)

Modelo de recuperación de la base de datos; uno de los siguientes valores:

FULL

BULK-LOGGED

SIMPLE

NULL

DifferentialBaseLSN

numeric(25,0) NULL

Para una copia de seguridad diferencial con una única copia de seguridad base, el valor es igual al FirstLSN de la base diferencial; los cambios con LSN superiores o iguales a DifferentialBaseLSN se incluyen en la copia diferencial.

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 (Transact-SQL).

Para los tipos de copia de seguridad no diferenciales, el valor es siempre NULL.

Para obtener más información, vea Base de una copia de seguridad diferencial.

NULL

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.

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

Tipo de copia de seguridad como cadena, uno de los siguientes valores:

NORMAL

DIFFERENTIAL

INCREMENTAL

DAILY

BackupSetGUID

uniqueidentifier NULL

Número de identificación único del conjunto de copia de seguridad mediante el cual se identifica en los medios.

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 razón de compresión, utilice CompressedBackupSize y BackupSize.

Durante una actualización msdb, se establece este valor para que coincida con el valor de la columna BackupSize.

NULL

Nota

Si se definen contraseñas para los conjuntos de copia de seguridad, RESTORE HEADERONLY sólo 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 por 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.

Permisos

A partir de SQL Server 2008, 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 GRANT (permisos de base de datos de Transact-SQL).

La operación de copia de seguridad puede especificar opcionalmente contraseñas de un conjunto de medios, de un conjunto de copia de seguridad o de 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 Microsoft SQL Server. No obstante, la contraseña no impide que se sobrescriba el medio con la opción FORMAT de la instrucción BACKUP.

Nota de seguridadNota de seguridad

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 Microsoft SQL Server. Evite utilizar esta característica en nuevos trabajos de desarrollo y tenga previsto modificar las aplicaciones que actualmente la utilizan. La práctica recomendada para proteger las copias de seguridad consiste en almacenar las cintas de copia de seguridad en una ubicación segura o hacer una copia de seguridad en archivos de disco protegidos mediante las 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.

Ejemplos

En el ejemplo siguiente se devuelve la información del encabezado del archivo de disco C:\AdventureWorks2008R2-FullBackup.bak.

RESTORE HEADERONLY 
FROM DISK = N'C:\AdventureWorks2008R2-FullBackup.bak' 
WITH NOUNLOAD;
GO