backupset (Transact-SQL)

針對每個備份組,各包含一個資料列。備份組包含單次成功備份作業的備份。RESTORE、RESTORE FILELISTONLY、RESTORE HEADERONLY 和 RESTORE VERIFYONLY 陳述式是用於單一備份組上 (此備份組位於指定的單一或多重備份裝置上的媒體集內)。

這份資料表儲存在 msdb 資料庫中。

資料行名稱

資料類型

描述

backup_set_id

int

用來識別備份組的唯一備份組識別碼。識別,主索引鍵。

backup_set_uuid

uniqueidentifier

用來識別備份組的唯一備份組識別碼。

media_set_id

int

用來識別備份組所在媒體集的唯一媒體集識別碼。參考 backupmediaset(media_set_id)

first_family_number

tinyint

備份組啟動時所在之媒體的家族號碼。可以是 NULL。

first_media_number

smallint

備份組啟動時所在之媒體的媒體號碼。可以是 NULL。

last_family_number

tinyint

備份組結束時所在之媒體的家族號碼。可以是 NULL。

last_media_number

smallint

備份組結束時所在之媒體的媒體號碼。可以是 NULL。

catalog_family_number

tinyint

備份組目錄起點所在之媒體的家族號碼。可以是 NULL。

catalog_media_number

smallint

備份組目錄起點所在之媒體的媒體號碼。可以是 NULL。

position

int

還原作業用來尋找適當備份組和檔案的備份組位置。可以是 NULL。如需詳細資訊,請參閱<BACKUP (Transact-SQL)>中的 FILE。

expiration_date

datetime

備份組到期的日期和時間。可以是 NULL。

software_vendor_id

int

寫入備份媒體標頭的軟體供應商識別碼。可以是 NULL。

name

nvarchar(128)

備份組的名稱。可以是 NULL。

description

nvarchar(255)

備份組的描述。可以是 NULL。

user_name

nvarchar(128)

執行備份作業的使用者名稱。可以是 NULL。

software_major_version

tinyint

Microsoft SQL Server 主要版本號碼。可以是 NULL。

software_minor_version

tinyint

SQL Server 次要版本號碼。可以是 NULL。

software_build_version

smallint

SQL Server 組建編號。可以是 NULL。

time_zone

smallint

本機時間 (備份作業所在位置) 和國際標準時間 (UTC) 的時差,間隔是 15 分鐘。值可以是 -48 至 +48,頭尾包括在內。127 值表示未知。例如,-20 是美東標準時間 (EST) 或 UTC 之後 5 小時。可以是 NULL。

mtf_minor_version

tinyint

Microsoft Tape Format 次要版本號碼。可以是 NULL。

first_lsn

numeric(25,0)

備份組中第一個或最舊記錄的記錄序號。可以是 NULL。

last_lsn

numeric(25,0)

備份組之後下一個記錄的記錄序號。可以是 NULL。

checkpoint_lsn

numeric(25,0)

必須啟動重做的記錄之記錄序號。可以是 NULL。

database_backup_lsn

numeric(25,0)

最近的完整資料庫備份之記錄序號。可以是 NULL。

database_backup_lsn 是備份啟動時所觸發的「檢查點起點」。如果備份是在資料庫閒置時取得的,且沒有設定任何複寫,這個 LSN 就會與 first_lsn 一致。

database_creation_date

datetime

最初建立資料庫的日期和時間。可以是 NULL。

backup_start_date

datetime

備份作業開始的日期和時間。可以是 NULL。

backup_finish_date

datetime

備份作業完成的日期和時間。可以是 NULL。

type

char(1)

這是備份類型,它有下列幾種:

D = 資料庫

I = 差異資料庫

L = 記錄

F = 檔案或檔案群組

G = 差異檔案

P = 部分

Q = 差異部分

可以是 NULL。

sort_order

smallint

執行備份作業的伺服器排序順序。可以是 NULL。如需有關排序次序和定序的詳細資訊,請參閱<使用定序>。

code_page

smallint

執行備份作業的伺服器字碼頁。可以是 NULL。如需有關字碼頁的詳細資訊,請參閱<使用定序>。

compatibility_level

tinyint

這是資料庫的相容性層級設定,它有下列幾種:

80 = SQL Server 2000

90 = SQL Server 2005

100 = SQL Server 2008

可以是 NULL。

如需有關相容性層級的詳細資訊,請參閱<sp_dbcmptlevel (Transact-SQL)>。

database_version

int

資料庫版本號碼。可以是 NULL。

backup_size

numeric(20,0)

備份組的大小 (以位元組為單位)。可以是 NULL。

database_name

nvarchar(128)

執行備份所涉及的資料庫名稱。可以是 NULL。

server_name

nvarchar(128)

執行 SQL Server 備份作業的伺服器名稱。可以是 NULL。

machine_name

nvarchar(128)

執行 SQL Server 的電腦名稱。可以是 NULL。

flags

int

在 SQL Server 中,flags 資料行已被取代,而且是以下列位元資料行取代它:

  • has_bulk_logged_data

  • is_snapshot

  • is_readonly

  • is_single_user

  • has_backup_checksums

  • is_damaged

  • begins_log_chain

  • has_incomplete_metadata

  • is_force_offline

  • is_copy_only

可以是 NULL。

在較早 SQL Server 版本的備份組中,旗標位元的狀況如下:

1 = 備份包含記錄最少的資料。

2 = 使用 WITH SNAPSHOT。

4 = 當備份時,資料庫是唯讀的。

8 = 當備份時,資料庫在單一使用者模式中。

unicode_locale

int

Unicode 地區設定。可以是 NULL。

unicode_compare_style

int

Unicode 比較樣式。可以是 NULL。

collation_name

nvarchar(128)

定序名稱。可以是 NULL。

Is_password_protected

bit

這是指備份組

是否有密碼保護:

0 = 無保護

1 = 保護

recovery_model

nvarchar(60)

資料庫的復原模式:

FULL

BULK-LOGGED

SIMPLE

has_bulk_logged_data

bit

1 = 備份包含大量記錄資料。

is_snapshot

bit

1 = 備份是利用 SNAPSHOT 選項所取得。

is_readonly

bit

1 = 當備份時,資料庫是唯讀的。

is_single_user

bit

1 = 當備份時,資料庫是單一使用者。

has_backup_checksums

bit

1 = 備份包含備份總和檢查碼。

is_damaged

bit

1 = 建立這個備份時,偵測到資料庫損毀。要求備份作業忽略錯誤,繼續作業。

begins_log_chain

bit

1 = 這是連續記錄備份鏈結中的第一個記錄備份。記錄鏈結的開頭是建立資料庫之後,或從簡單復原模式切換到完整或大量記錄復原模式之後,所取出的第一個記錄備份。

has_incomplete_metadata

bit

1 = 包含不完整中繼資料的結尾記錄備份。如需詳細資訊,請參閱<結尾記錄備份>。

is_force_offline

bit

1 = 當取得備份時,利用 NORECOVERY 選項使資料庫離線。

is_copy_only

bit

1 = 僅限複製的備份。如需詳細資訊,請參閱<只複製備份>。

first_recovery_fork_guid

uniqueidentifier

起始復原分岔的識別碼。這對應於 RESTORE HEADERONLY 的 FirstRecoveryForkID

對於資料備份而言,first_recovery_fork_guid 等於 last_recovery_fork_guid

last_recovery_fork_guid

uniqueidentifier

結尾復原分岔的識別碼。這對應於 RESTORE HEADERONLY 的 RecoveryForkID

對於資料備份而言,first_recovery_fork_guid 等於 last_recovery_fork_guid

fork_point_lsn

numeric(25,0)

如果 first_recovery_fork_guid 不等於 last_recovery_fork_guid,這就是分岔點的記錄序號。否則,這個值是 NULL。

database_guid

uniqueidentifier

資料庫的唯一識別碼。這對應於 RESTORE HEADERONLY 的 BindingID。當還原資料庫時,會指派一個新值。

family_guid

uniqueidentifier

建立時原始資料庫的唯一識別碼。當還原資料庫時,即使還原成不同的名稱,這個值也會維持不變。

differential_base_lsn

numeric(25,0)

差異備份的基底 LSN。如果是單一基礎的差異備份,LSN 大於或等於 differential_base_lsn 的變更會併入差異備份中。

如果是多重基底差異備份,這個值就是 NULL,基底 LSN 必須取決於檔案層級 (請參閱<backupfile (Transact-SQL)>)。

如果是非差異備份類型,這個值永遠是 NULL。

differential_base_guid

uniqueidentifier

如果是單一基底差異備份,這個值就是差異基底的唯一識別碼。

如果是多重基底差異備份,這個值就是 NULL,差異基底必須取決於檔案層級。

如果是非差異備份類型,這個值就是 NULL。

compressed_backup_size

Numeric(20,0)

儲存於磁碟上之備份的總位元組數。

若要計算壓縮比率,請使用 compressed_backup_sizebackup_size

msdb 升級期間,這個值會設定為 NULL,這表示非壓縮的備份。

備註

RESTORE VERIFYONLY FROM backup_device WITH LOADHISTORY 會將 backupmediaset 資料表的資料行填入媒體集標頭中的適當值。

若要減少此資料表以及其他備份和記錄資料表中的資料列數目,請執行 sp_delete_backuphistory 預存程序。