Инструкции RESTORE — HEADERONLY (Transact-SQL)
Применимо к: SQL Server Управляемый экземпляр SQL Azure
Возвращает результирующий набор, содержащий все данные заголовков резервных копий из всех резервных наборов данных на конкретном устройстве резервного копирования в SQL Server.
Примечание
Описания аргументов см. в статье Аргументы инструкций RESTORE (Transact-SQL).
Соглашения о синтаксисе Transact-SQL
Синтаксис
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 }
}
Примечание
URL
— это формат, используемый для указания расположения и имени файла для Хранилище BLOB-объектов Azure и поддерживается начиная с SQL Server 2012 (11.x) с пакетом обновления 1 (CU 2). Хотя служба хранилища Azure является службой, реализация аналогична диску и ленте, что обеспечивает согласованное и простое восстановление для всех трех устройств.
Аргументы
Описание аргументов см. в RESTORE HEADERONLY
разделе Аргументы RESTORE (Transact-SQL).
Наборы результатов
Сервер отправляет строку данных заголовка со следующими столбцами для каждой резервной копии на данном устройстве:
Имя столбца | Тип данных | Описание резервных наборов данных SQL Server |
---|---|---|
BackupName 1 |
nvarchar(128) | Имя резервного набора данных. |
BackupDescription |
nvarchar(255) | Описание резервного набора данных. Может иметь значение NULL. |
BackupType |
smallint | Тип резервной копии: 1 = база данных 2 = журнал транзакций 4 = файл; 5 = разностная резервная копия базы данных 6 = разностная резервная копия файла 7 = частичная резервная копия 8 = частичная разностная резервная копия |
ExpirationDate |
datetime | Дата истечения срока хранения резервного набора данных. |
Compressed |
bit | Сжат ли резервный набор данных с помощью программных методов сжатия: 0 = нет 1 = да |
Position |
smallint | Позиция резервного набора данных в томе (для использования с параметром FILE =). |
DeviceType |
tinyint | Число, соответствующее устройству, используемому для операции резервного копирования. Диск: - 2 = логическое - 102 = физический Лента: - 5 = Логическое - 105 = физический Виртуальное устройство: - 7 = Логическое - 107 = физический URL-адрес: - 9 = Логическое - 109 = физический Логические имена и номера устройств находятся в sys.backup_devices . Дополнительные сведения см. в разделе sys.backup_devices. |
UserName |
nvarchar(128) | Имя пользователя, выполнившего операцию резервного копирования. |
ServerName |
nvarchar(128) | Имя сервера, записавшего резервный набор данных. |
DatabaseName |
nvarchar(128) | Имя базы данных, для которой была создана резервная копия. |
DatabaseVersion |
int | Версия базы данных, для которой была создана резервная копия. |
DatabaseCreationDate |
datetime | Дата и время, когда была создана база данных. |
BackupSize |
numeric(20,0) | Размер резервной копии, в байтах. |
FirstLSN |
numeric(25,0) | Регистрационный номер транзакции из первой записи журнала в резервном наборе данных. |
LastLSN |
numeric(25,0) | Регистрационный номер транзакции в журнале для следующей записи журнала после резервного набора данных. |
CheckpointLSN |
numeric(25,0) | Регистрационный номер транзакции в журнале для последней контрольной точки на момент создания резервной копии. |
DatabaseBackupLSN |
numeric(25,0) | Регистрационный номер транзакции в журнале для последней полной резервной копии базы данных.DatabaseBackupLSN — это "начало контрольной точки", которая активируется при запуске резервного копирования. Этот номер LSN совпадает с FirstLSN резервным копированием, когда база данных простаивает и репликация не настроена. |
BackupStartDate |
datetime | Дата и время начала операции резервного копирования базы данных. |
BackupFinishDate |
datetime | Дата и время завершения операции резервного копирования базы данных. |
SortOrder |
smallint | Порядок сортировки на сервере. Данный столбец действителен только для резервных копий баз данных. Предоставляется для обратной совместимости. |
CodePage |
smallint | Кодовая страница сервера или кодировка, используемый сервером. |
UnicodeLocaleId |
int | Параметр конфигурации, определяющий код локали сервера для сортировки символьных данных в Юникоде. Предоставляется для обратной совместимости. |
UnicodeComparisonStyle |
int | Параметр конфигурации, определяющий режим сравнения данных в Юникоде на сервере, что обеспечивает дополнительные возможности управления сортировкой. Предоставляется для обратной совместимости. |
CompatibilityLevel |
tinyint | Параметр уровня совместимости базы данных, для которой была создана резервная копия. |
SoftwareVendorId |
int | Идентификационный номер поставщика программного обеспечения. Для SQL Server это число имеет 4608 значение (или шестнадцатеричное 0x1200 ). |
SoftwareVersionMajor |
int | Основной номер версии сервера, который создал резервный набор данных. |
SoftwareVersionMinor |
int | Дополнительный номер версии сервера, который создал резервный набор данных. |
SoftwareVersionBuild |
int | Номер построения сервера, который создал резервный набор данных. |
MachineName |
nvarchar(128) | Имя компьютера, выполнившего операцию резервного копирования. |
Flags |
int | Значения битов отдельных флагов: - 1 = резервное копирование журнала содержит операции с неполным протоколированием. - 2 = резервное копирование моментального снимка. — 4 = база данных была доступной только для чтения при резервном копировании. — 8 = база данных была в однопользовательском режиме при резервном копировании. - 16 = резервное копирование содержит контрольные суммы резервных копий. - 32 = база данных была повреждена при резервном копировании, но операция резервного копирования была запрошена для продолжения, несмотря на ошибки. — 64 = резервная копия заключительного фрагмента журнала. — 128 = резервная копия заключительного фрагмента журнала с неполными метаданными. — 256 = резервная копия заключительного фрагмента журнала с NORECOVERY. Важно: Рекомендуется использовать вместо отдельных логических Flags столбцов (начиная с HasBulkLoggedData и заканчивая IsCopyOnly в этой таблице). |
BindingID |
uniqueidentifier | Идентификатор привязки для базы данных. Это значение соответствует database_guid в sys.database_recovery_status . Новое значение присваивается, когда база данных восстанавливается. См. также FamilyGUID . |
RecoveryForkID |
uniqueidentifier | Идентификатор последней вилки восстановления. Этот столбец соответствует last_recovery_fork_guid в таблице резервных наборов данных .Для резервных RecoveryForkID копий данных значение равно FirstRecoveryForkID . |
Collation |
nvarchar(128) | Параметры сортировки, используемые базой данных. |
FamilyGUID |
uniqueidentifier | Идентификатор исходной базы данных, присвоенный в момент ее создания. Это значение остается неизменным при восстановлении базы данных. |
HasBulkLoggedData |
bit | 1 = резервная копия журналов содержит операции с неполным протоколированием. |
IsSnapshot |
bit | 1 = резервное копирование путем создания моментального снимка. |
IsReadOnly |
bit | 1 = во время резервного копирования база данных была доступна только для чтения. |
IsSingleUser |
bit | 1 = во время резервного копирования база данных находилась в однопользовательском режиме. |
HasBackupChecksums |
bit | 1 = резервная копия содержит контрольные суммы резервных копий. |
IsDamaged |
bit | 1 = во время резервного копирования база данных была повреждена, однако затребовано продолжение операции, несмотря на ошибки. |
BeginsLogChain |
bit | 1 = это первая резервная копия журналов в непрерывной цепочке. Цепочка журналов начинается с первой резервной копии журнала, созданной после создания базы данных или при переключении с простой модели восстановления на полную или Bulk-Logged. |
HasIncompleteMetaData |
bit | 1 = резервная копия заключительного фрагмента журнала с неполными метаданными. Дополнительные сведения о резервных копиях заключительных фрагментов журналов с неполными метаданными резервного копирования см. в разделе Резервные копии заключительного фрагмента журнала (SQL Server). |
IsForceOffline |
bit | 1 = резервное копирование выполнено с параметром NORECOVERY; для резервного копирования база данных была переведена в режим «вне сети». |
IsCopyOnly |
bit | 1 = резервная копия только для копирования. Резервная копия только для копирования не влияет на общие процедуры резервного копирования и восстановления базы данных. Дополнительные сведения см. в статье Резервные копии только для копирования (SQL Server). |
FirstRecoveryForkID |
uniqueidentifier | Идентификатор первой вилки восстановления. Этот столбец соответствует first_recovery_fork_guid в таблице резервных наборов данных .Для резервных FirstRecoveryForkID копий данных значение равно RecoveryForkID . |
ForkPointLSN |
numeric(25,0) | Если FirstRecoveryForkID значение не равно RecoveryForkID , это значение является порядковый номер в журнале точки вилки. В противном случае - значение NULL. |
RecoveryModel |
nvarchar(60) | Модель восстановления для базы данных, одна из следующих: -ПОЛНЫЙ — МАССОВОЕ ВЕДЕНИЕ ЖУРНАЛА -ПРОСТОЙ |
DifferentialBaseLSN |
numeric(25,0) | Для одноуровневой разностной резервной копии значение равно FirstLSN разностной базе. Изменения с номерами LSN, превышающими или равными DifferentialBaseLSN , включаются в разностную систему.Для многобазового разностного резервного копирования значение равно NULL, а базовый номер LSN должен быть определен на файловом уровне. Дополнительные сведения см. в статье Инструкции RESTORE — FILELISTONLY (Transact-SQL). Для разностных резервных копий это значение всегда равно NULL. Дополнительные сведения см. в разделе Разностные резервные копии (SQL Server). |
DifferentialBaseGUID |
uniqueidentifier | Для разностной резервной копии с одной основой значение является уникальным идентификатором базовой копии для разностного копирования. Для разностного резервного копирования на основе нескольких базовых копий это значение равно NULL, а базовая копия для разностного копирования должна определяться по отдельным файлам. Для разностных резервных копий это значение равно NULL. |
BackupTypeDescription |
nvarchar(60) | Тип резервной копии, один из: -БАЗЫ ДАННЫХ — ЖУРНАЛ ТРАНЗАКЦИЙ — ФАЙЛ ИЛИ ФАЙЛОВАЯ ГРУППА — РАЗНОСТНАЯ БАЗА ДАННЫХ — ФАЙЛ РАЗНОСТНЫЙ ЧАСТИЧНЫЙ — ЧАСТИЧНОЕ РАЗНОСТНОЕ |
BackupSetGUID |
uniqueidentifier | Уникальный идентификационный номер резервного набора данных, по которому этот набор определяется в носителе. Может иметь значение NULL. |
CompressedBackupSize |
bigint | Число байтов в резервном наборе данных. Для несжатых резервных копий это значение равно BackupSize .Чтобы вычислить коэффициент сжатия, используйте CompressedBackupSize и BackupSize .msdb Во время обновления это значение устанавливается в соответствии со значением столбцаBackupSize . |
containment |
tinyint | Применимо к: SQL Server 2012 (11.x) и более поздних версий. Указывает состояние включения базы данных. 0 = включение базы данных отключено 1 = база данных находится в состоянии частичного включения |
KeyAlgorithm |
nvarchar(32) | Применимо к: SQL Server 2014 (12.x) CU 1 и более поздних версий. Алгоритм шифрования резервной копии. NO_Encryption указывает, что резервная копия не была зашифрована. Если не удается определить правильное значение, значение должно иметь значение NULL. |
EncryptorThumbprint |
varbinary(20) | Применимо к: SQL Server 2014 (12.x) CU 1 и более поздних версий. Отпечаток шифратора, который можно использовать для поиска сертификата или асимметричного ключа в базе данных. Если резервная копия не была зашифрована, это значение равно NULL. |
EncryptorType |
nvarchar(32) | Применимо к: SQL Server 2014 (12.x) CU 1 и более поздних версий. Тип используемого шифратора: сертификат или асимметричный ключ. Если резервная копия не была зашифрована, это значение равно NULL. |
LastValidRestoreTime |
datetime | Применимо к: SQL Server 2022 (16.x) и более поздних версий. Последнее допустимое время восстановления. |
TimeZone |
nvarchar(32) | Применимо к: SQL Server 2022 (16.x) и более поздних версий. Часовой пояс сервера, с которого была сделана резервная копия. |
CompressionAlgorithm |
nvarchar(32) | Применимо к: SQL Server 2022 (16.x) и более поздних версий. Определяет алгоритм сжатия, используемый для сжатия файла резервной копии. Значение по умолчанию — MS_XPRESS. Дополнительные сведения см. в описании BACKUP. |
1 Если для резервных наборов данных определены пароли, отображаются полные сведения только для резервного набора данных, RESTORE HEADERONLY
пароль которого соответствует указанному PASSWORD
параметру команды. RESTORE HEADERONLY
также отображаются полные сведения о незащищенных резервных наборах данных. Столбец BackupName
для других защищенных паролем резервных наборов данных на носителе имеет значение 'Password Protected'
, а все остальные столбцы имеют значение NULL.
Комментарии
Клиент может использовать для RESTORE HEADERONLY
получения всех сведений о заголовках резервных копий для всех резервных копий на определенном устройстве резервного копирования. Для каждой резервной копии на устройстве резервного копирования сервер передает данные заголовка в виде строки.
RESTORE HEADERONLY
просматривает все резервные наборы данных на носителе. Поэтому для получения этого результирующего набора из ленточных накопителей большой емкости может потребоваться некоторое время. Чтобы быстро просмотреть носитель без получения сведений о каждом резервном наборе данных, используйте RESTORE LABELONLY
или укажите FILE = <backup_set_file_number>
.
Из-за особенностей формата ленты (Майкрософт) резервные наборы данных из других программ могут занимать место на том же носителе, что и SQL Server резервных наборов данных. Результирующий набор, возвращаемый параметром , RESTORE HEADERONLY
включает строку для каждого из этих других резервных наборов данных.
Безопасность
В операции создания резервной копии могут дополнительно указываться пароли для набора носителей, резервного набора данных или и того и другого. Если для набора носителей или резервного набора данных установлен пароль, то в инструкции RESTORE необходимо указывать правильные пароли. Пароли предотвращают несанкционированные операции восстановления и присоединения резервных наборов данных к носителю при помощи инструментов SQL Server. Однако пароль не предотвращает перезапись носителя с помощью параметра FORMAT инструкции BACKUP.
Важно!
Данный пароль не обеспечивает надежную защиту. Он предназначен для предотвращения неверного восстановления при использовании средств SQL Server авторизованными или неавторизованными пользователями. При этом остается возможным чтение данных резервных копий с помощью других средств или замена пароля. В будущей версии Microsoft SQL Server этот компонент будет удален. Старайтесь не использовать эту возможность в новых разработках и постарайтесь изменить все приложения, которые в настоящее время ее используют. Для защиты резервных копий рекомендуется хранить ленты резервных копий в безопасном расположении или создавать резервные копии на дисках, защищенных соответствующими списками управления доступом (ACL). Списки ACL должны располагаться в корневом каталоге, в котором создаются резервные копии.
Разрешения
Для получения сведений о резервном наборе данных или устройстве резервного копирования требуется разрешение CREATE DATABASE. Дополнительные сведения см. в статье GRANT, предоставление разрешений на базу данных (Transact-SQL).
Примеры
В следующем примере возвращаются данные из заголовка файла на диске C:\AdventureWorks-FullBackup.bak
.
RESTORE HEADERONLY
FROM DISK = N'C:\AdventureWorks-FullBackup.bak';
GO
См. также раздел
- BACKUP (Transact-SQL)
- backupset (Transact-SQL)
- RESTORE REWINDONLY (Transact-SQL)
- RESTORE VERIFYONLY (Transact-SQL).
- RESTORE (Transact-SQL)
- Журнал и сведения о заголовке резервной копии (SQL Server)
- Включение или отключение вычисления контрольных сумм резервных копий во время архивации или восстановления (SQL Server)
- Наборы носителей, семейства носителей и резервные наборы данных (SQL Server)
- Модели восстановления (SQL Server)
Обратная связь
Отправить и просмотреть отзыв по