RESTORE HEADERONLY (Transact-SQL)
傳回含有特定備份裝置上的所有備份組之所有備份標頭資訊的結果集。
附註: |
---|
如需引數的描述,請參閱<RESTORE 引數 (Transact-SQL)>。 |
語法
RESTORE HEADERONLY
FROM <backup_device>
[ WITH
[ { CHECKSUM | NO_CHECKSUM } ]
[ [ , ] { CONTINUE_AFTER_ERROR | STOP_ON_ERROR } ]
[ [ , ] FILE = backup_set_file_number ]
[ [ , ] MEDIANAME = { media_name | @media_name_variable } ]
[ [ , ] MEDIAPASSWORD = { mediapassword |
@mediapassword_variable } ]
[ [ , ] PASSWORD = { password | @password_variable } ]
[ [ , ] REWIND ]
[ [ , ] { UNLOAD | NOUNLOAD } ]
]
[;]
<backup_device> ::=
{
{ logical_backup_device_name |
@logical_backup_device_name_var }
| { DISK | TAPE } = { 'physical_backup_device_name' |
@physical_backup_device_name_var }
}
引數
如需 RESTORE HEADERONLY 引數的描述,請參閱<RESTORE 引數 (Transact-SQL)>。
結果集
對於給定裝置中的每個備份,伺服器都會傳送一個含有下列資料行的標頭資訊資料列:
附註: |
---|
RESTORE HEADERONLY 會查看媒體中的所有備份組。因此,當使用高容量磁帶機時,產生這個結果集可能需要一些時間。若要快速瀏覽媒體,而不需要取得每個備份組的相關資訊,請使用 RESTORE LABELONLY,或指定 FILE = backup_set_file_number。 |
附註: |
---|
由於 Microsoft Tape Format 的本質,其他軟體程式的備份組有可能佔用 Microsoft SQL Server 備份組相同媒體的空間。RESTORE HEADERONLY 傳回的結果集會針對每個這些其他備份組,各包括一個資料列。 |
資料行名稱
資料類型
SQL Server 備份組的描述
其他備份組的描述
BackupName
nvarchar(128)
備份組名稱
資料集名稱
BackupDescription
nvarchar(255)
備份組描述
資料集描述
BackupType
smallint
備份類型:
1 = 資料庫
2 = 交易記錄
4 = 檔案
5 = 差異資料庫
6 = 差異檔案
7 = 部分
8 = 差異部分
備份類型:
1 = 正常
5 = 差異
16 = 累加
17 = 每天
ExpirationDate
datetime
備份組的到期日。
NULL
Compressed
tinyint
0 = 否。SQL Server 不支援軟體壓縮
是否利用以軟體為基礎的壓縮來壓縮備份組:
1 = 是
0 = 否
Position
smallint
備份組在磁碟區中的位置 (用來搭配 FILE = 選項)。
備份組在磁碟區中的位置
DeviceType
tinyint
備份作業所用裝置的對應號碼。
磁碟:
2 = 邏輯
102 = 實體
磁帶:
5 = 邏輯
105 = 實體
虛擬裝置:
7 = 邏輯
107 = 實體
邏輯裝置名稱和裝置號碼在 sys.backup_devices 中;如需詳細資訊,請參閱<sys.backup_devices (Transact-SQL)>。
NULL
UserName
nvarchar(128)
執行備份作業的使用者名稱。
執行備份作業的使用者名稱
ServerName
nvarchar(128)
寫入備份組的伺服器名稱。
NULL
DatabaseName
nvarchar(128)
備份的資料庫名稱。
NULL
DatabaseVersion
int
建立備份的來源資料庫版本。
NULL
DatabaseCreationDate
datetime
建立資料庫的日期和時間。
NULL
BackupSize
numeric(20,0)
備份的大小 (以位元組為單位)。
NULL
FirstLSN
numeric(25,0)
備份組中第一個記錄的記錄序號。
NULL
LastLSN
numeric(25,0)
備份組之後下一個記錄的記錄序號。
NULL
CheckpointLSN
numeric(25,0)
在建立備份時,最近的檢查點之記錄序號。
NULL
DatabaseBackupLSN
numeric(25,0)
最近的完整資料庫備份之記錄序號。
DatabaseBackupLSN 是備份啟動時所觸發的「檢查點起點」。如果備份是在資料庫閒置時取得的,且沒有設定任何複寫,這個 LSN 就會與 FirstLSN 一致。
NULL
BackupStartDate
datetime
備份作業開始的日期和時間。
媒體寫入日期
BackupFinishDate
datetime
備份作業完成的日期和時間。
媒體寫入日期
SortOrder
smallint
伺服器排序順序。這個資料行只對資料庫備份有效。提供這個項目的目的,是為了與舊版相容。
NULL
CodePage
smallint
伺服器所用的伺服器字碼頁或字元集。
NULL
UnicodeLocaleId
int
用來排序 Unicode 字元資料的伺服器 Unicode 地區設定識別碼組態選項。提供這個項目的目的,是為了與舊版相容。
NULL
UnicodeComparisonStyle
int
伺服器 Unicode 比較樣式組態選項,用來提供其他 Unicode 資料排序控制。提供這個項目的目的,是為了與舊版相容。
NULL
CompatibilityLevel
tinyint
建立備份的來源資料庫相容性層級設定。
NULL
SoftwareVendorId
int
軟體供應商識別碼。SQL Server 的這個號碼是 4608 (或十六進位的 0x1200)。
軟體供應商識別碼
SoftwareVersionMajor
int
建立備份組的伺服器之主要版本號碼。
建立備份組的軟體之主要版本號碼
SoftwareVersionMinor
int
建立備份組的伺服器之次要版本號碼。
建立備份組的軟體之次要版本號碼
SoftwareVersionBuild
int
建立備份組的伺服器之組建編號。
NULL
MachineName
nvarchar(128)
執行備份作業的電腦名稱。
執行備份作業的電腦類型
Flags
int
若設為 1,個別旗標位元意義如下:
1 = 記錄備份包含大量記錄作業。
2 = 快照集備份。
4 = 當備份時,資料庫是唯讀的。
8 = 當備份時,資料庫在單一使用者模式中。
16 = 備份包含備份總和檢查碼。
32 = 當備份時,資料庫損毀,但要求忽略錯誤,繼續執行備份作業。
64 = 結尾記錄備份。
128 = 結尾記錄備份使用不完整的中繼資料。
256 = 結尾記錄備份使用 NORECOVERY。
重要事項:
建議您不要用 Flags,改用個別的布林資料行 (下列從 HasBulkLoggedData 到 IsCopyOnly 的布林資料行)。
NULL
BindingID
uniqueidentifier
資料庫的繫結識別碼。這對應於 sys.databasesdatabase_guid。當還原資料庫時,會指派一個新值。請參閱 FamilyGUID (下文)。
NULL
RecoveryForkID
uniqueidentifier
結尾復原分岔的識別碼。這個資料行對應於 backupset 資料表中的 last_recovery_fork_guid。
對於資料備份而言,RecoveryForkID 等於 FirstRecoveryForkID。
NULL
Collation
nvarchar(128)
資料庫所用的定序。
NULL
FamilyGUID
uniqueidentifier
在建立之時,原始資料庫的識別碼。當還原資料庫時,這個值會維持不變。
NULL
HasBulkLoggedData
bit
1 = 包含大量記錄作業的記錄備份。
NULL
IsSnapshot
bit
1 = 快照集備份。
NULL
IsReadOnly
bit
1 = 當備份時,資料庫是唯讀的。
NULL
IsSingleUser
bit
1 = 當備份時,資料庫是單一使用者。
NULL
HasBackupChecksums
bit
1 = 備份包含備份總和檢查碼。
NULL
IsDamaged
bit
1 = 當備份時,資料庫損毀,但要求忽略錯誤,繼續執行備份作業。
NULL
BeginsLogChain
bit
1 = 這是連續記錄備份鏈結中的第一個記錄備份。記錄鏈結的開頭是建立資料庫之後,或從簡單復原模式切換到完整或大量記錄復原模式之後,所取出的第一個記錄備份。
NULL
HasIncompleteMetaData
bit
1 = 包含不完整中繼資料的結尾記錄備份。
如需有關含不完整備份中繼資料之結尾記錄備份的資訊,請參閱<結尾記錄備份>。
NULL
IsForceOffline
bit
1 = 利用 NORECOVERY 取得的備份;資料庫由備份離線取得。
NULL
IsCopyOnly
bit
1 = 僅限複製的備份。
僅限複製備份並不會影響資料庫的整體備份和還原程序。如需詳細資訊,請參閱<僅限複製備份>。
NULL
FirstRecoveryForkID
uniqueidentifier
起始復原分岔的識別碼。這個資料行對應於 first_recovery_fork_guid 資料表中的 backupset。
對於資料備份而言,FirstRecoveryForkID 等於 RecoveryForkID。
NULL
ForkPointLSN
numeric(25,0) NULL
如果 FirstRecoveryForkID 不等於 RecoveryForkID,這就是分岔點的記錄序號。否則,這個值是 NULL。
NULL
RecoveryModel
nvarchar(60)
這是資料庫的復原模式,它有下列幾種:
FULL
BULK-LOGGED
SIMPLE
NULL
DifferentialBaseLSN
numeric(25,0) NULL
如果是單一基底差異備份,這個值就等於差異基底的 FirstLSN;LSN 大於或等於 DifferentialBaseLSN 的變更會併入差異備份中。
如果是多重基底差異備份,這個值就是 NULL,基底 LSN 必須取決於檔案層級。如需詳細資訊,請參閱<RESTORE FILELISTONLY (Transact-SQL)>。
如果是非差異備份類型,這個值一律是 NULL。
如需詳細資訊,請參閱<差異備份的基底>。
NULL
DifferentialBaseGUID
uniqueidentifier
如果是單一基底差異備份,這個值就是差異基底的唯一識別碼。
如果是多重基底差異備份,這個值就是 NULL,差異基底必須取決於個別檔案。
如果是非差異備份類型,這個值就是 NULL。
NULL
BackupTypeDescription
nvarchar(60)
這是字串備份類型,它有下列幾種:
DATABASE
TRANSACTION LOG
FILE OR FILEGROUP
DATABASE DIFFERENTIAL
FILE DIFFERENTIAL PARTIAL
PARTIAL DIFFERENTIAL
這是字串備份類型,它有下列幾種:
NORMAL
DIFFERENTIAL
INCREMENTAL
DAILY
BackupSetGUID
uniqueidentifier NULL
在媒體中,用來識別備份組的唯一識別碼。
NULL
附註: |
---|
如果定義了備份組的密碼,RESTORE HEADERONLY 只會顯示密碼符合命令指定的 PASSWORD 選項的備份組。另外,RESTORE HEADERONLY 也只會顯示未受保護之備份組的完整資訊。媒體中其他受密碼保護之備份組的 BackupName 資料行會設為 '***Password Protected***',所有其他資料行都是 NULL。 |
備註
用戶端可以利用 RESTORE HEADERONLY 來擷取特定備份裝置上的所有備份之所有備份標頭資訊。對於備份裝置中的每個備份,伺服器會將標頭資訊當做一個資料列來傳送。
權限
任何使用者都可以使用 RESTORE HEADERONLY。
備份作業可以選擇性地指定媒體集的密碼及 (或) 備份組的密碼。當在媒體集或備份組上定義密碼時,您必須在 RESTORE 陳述式中,指定一或多個正確的密碼。這些密碼可以防止他人利用 Microsoft SQL Server 2005 工具,在未獲授權的情況下,在媒體上執行還原作業及附加備份組。不過,密碼無法防止使用者利用 BACKUP 陳述式的 FORMAT 選項來覆寫媒體。
安全性注意事項: |
---|
這個密碼所提供的保護很弱。這是為了防止已獲授權或未獲授權的使用者使用 SQL Server 2005 工具進行不正確的還原。它無法預防使用其他方式或以取代密碼的方式來讀取備份資料。保護備份的最佳作法是將備份磁帶存放在安全位置,或備份至適當的存取控制清單 (ACL) 所保護的磁碟檔案中。ACL 應該設在備份建立所在之根目錄下。 |
範例
下列範例會傳回磁碟檔 C:\AdventureWorks-FullBackup.bak
標頭中的資訊。
RESTORE HEADERONLY
FROM DISK = N'C:\AdventureWorks-FullBackup.bak'
WITH NOUNLOAD;
GO
請參閱
參考
BACKUP (Transact-SQL)
backupset (Transact-SQL)
RESTORE REWINDONLY (Transact-SQL)
RESTORE VERIFYONLY (Transact-SQL)
RESTORE (Transact-SQL)
其他資源
檢視備份相關資訊
差異備份的基底
如何:啟用或停用備份總和檢查碼 (Transact-SQL)
記錄序號簡介
記錄序號和還原計劃
媒體集、媒體家族與備份組
復原模式概觀
復原路徑