backupset (Transact-SQL)
每个备份集在表中占一行。 “备份集”包含来自单个成功备份操作的备份。 RESTORE、RESTORE FILELISTONLY、RESTORE HEADERONLY 和 RESTORE VERIFYONLY 语句对指定的一个或多个备份设备上的介质集中的单个备份集进行操作。
此表存储在 msdb 数据库中。
适用范围:SQL Server(SQL Server 2008 到当前版本)。 |
列名 |
数据类型 |
说明 |
---|---|---|
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 磁带格式的次版本号。 可以为 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。 有关排序顺序和排序规则的详细信息,请参阅排序规则和 Unicode 支持。 |
code_page |
smallint |
执行备份操作的服务器的代码页。 可以为 NULL。 有关代码页的详细信息,请参阅排序规则和 Unicode 支持。 |
compatibility_level |
tinyint |
数据库的兼容级别设置。 可以是: 90 = SQL Server 2005 100 = SQL Server 2008 110 = SQL Server 2012 120 = SQL Server 2014 可以为 NULL。 有关兼容级别的详细信息,请参阅 ALTER DATABASE 兼容性级别 (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 列,即将用以下位列取代此列:
可以为 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 = 带不完整元数据的结尾日志备份。 有关详细信息,请参阅结尾日志备份 (SQL Server)。 |
is_force_offline |
bit |
1 = 进行备份时,使用了 NORECOVERY 选项使数据库脱机。 |
is_copy_only |
bit |
1 = 仅复制备份。 有关详细信息,请参阅仅复制备份 (SQL Server)。 |
first_recovery_fork_guid |
uniqueidentifier |
起始恢复分叉的 ID。 这对应于 RESTORE HEADERONLY 的 FirstRecoveryForkID。 对于数据备份,first_recovery_fork_guid 等于 last_recovery_fork_guid。 |
last_recovery_fork_guid |
uniqueidentifier |
结束恢复分叉的 ID。 这对应于 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 |
数据库的唯一 ID。 这对应于 RESTORE HEADERONLY 的 BindingID。 还原数据库时,将分配一个新值。 |
family_guid |
uniqueidentifier |
创建时原始数据库的唯一 ID。 还原数据库时,即使还原为其他名称,此值也保持不变。 |
differential_base_lsn |
numeric(25,0) |
差异备份的基准 LSN。 对于单一差异备份,差异备份中将包括大于或等于 differential_base_lsn 的 LSN 更改。 对于多基准的差异备份,该值为 NULL,并且必须在文件级别确定基准 LSN(请参阅 backupfile (Transact-SQL))。 对于非差异备份类型,该值始终为 NULL。 |
differential_base_guid |
uniqueidentifier |
对于单基准的差异备份,该值为差异基准的唯一标识符。 对于多基准的差异备份,该值为 NULL,并且必须在文件级别确定差异基准。 对于非差异备份类型,该值为 NULL。 |
compressed_backup_size |
Numeric(20,0) |
磁盘上存储的备份的总字节数。 若要计算压缩率,请使用 compressed_backup_size 和 backup_size。 在 msdb 升级过程中,将此值设置为 NULL。 表示未压缩的备份。 |
encryptor_thumbprint |
varbin |
可用于在数据库中查找证书或非对称密钥的加密程序的指纹。 在备份未加密的情况下,此值为 NULL。 |
encryptor_type |
varchar |
使用的加密程序的类型:证书或非对称密钥。 . 在备份未加密的情况下,此值为 NULL。 |
key_algorithm |
varchar |
用于加密备份的加密算法。 NO_Encryption 值指示备份未加密。 |
注释
RESTORE VERIFYONLY FROM backup_device WITH LOADHISTORY 使用来自介质集标头的相应值填充 backupmediaset 表的列。
若要减少此表以及其他备份和历史记录表中的行数,请执行 sp_delete_backuphistory 存储过程。
请参阅
参考
backupfilegroup (Transact-SQL)
backupmediafamily (Transact-SQL)
RESTORE HEADERONLY (Transact-SQL)