RESTORE LABELONLY (Transact-SQL)
语法
RESTORE LABELONLY
FROM <backup_device>
[ WITH
{
--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 }
}
结果集
RESTORE LABELONLY 的结果集包含提供下列信息的一个行。
列名 |
数据类型 |
说明 |
---|---|---|
MediaName |
nvarchar(128) |
媒体的名称。 |
MediaSetId |
uniqueidentifier |
媒体集的唯一标识号。 |
FamilyCount |
int |
媒体集中的媒体簇数。 |
FamilySequenceNumber |
int |
此媒体簇的序号。 |
MediaFamilyId |
uniqueidentifier |
媒体簇的唯一标识号。 |
MediaSequenceNumber |
int |
此媒体在媒体簇中的序号。 |
MediaLabelPresent |
tinyint |
媒体说明中是否包含: 1 = Microsoft 磁带格式媒体标签 0= 媒体说明 |
MediaDescription |
nvarchar(255) |
媒体说明(自由格式的文本)或磁带格式媒体标签。 |
SoftwareName |
nvarchar(128) |
写入标签的备份软件名称。 |
SoftwareVendorId |
int |
写入备份的软件供应商的唯一供应商标识号。 |
MediaDate |
datetime |
标签的写入日期和时间。 |
Mirror_Count |
int |
媒体集中的镜像服务器数 (1-4)。
注意
在媒体集中为不同镜像服务器写入的标签是相同的。
|
IsCompressed |
bit |
备份是否已压缩: 0 = 未压缩 1 = 已压缩 |
注意 |
---|
如果为媒体集定义了密码,则只有在命令的 MEDIAPASSWORD 选项中指定了正确的媒体密码时,RESTORE LABELONLY 才返回信息。 |
注释
执行 RESTORE LABELONLY 是找出备份媒体所含内容的快速方法。RESTORE LABELONLY 只读取媒体首部,因此即使在使用高容量磁带设备时该语句也执行得很快。
权限
在 SQL Server 2008 及更高版本中,获取有关备份集或备份设备的信息需要具有 CREATE DATABASE 权限。有关详细信息,请参阅GRANT 数据库权限 (Transact-SQL)。
备份操作可以有选择地指定媒体集的密码。如果为媒体集定义了密码,则必须在 RESTORE 语句中指定正确的密码。此密码可防止在未经授权的情况下使用 MicrosoftSQL Server 工具执行还原操作以及向媒体追加备份集。但是,密码不能阻止使用 BACKUP 语句的 FORMAT 选项覆盖媒体。
安全说明 |
---|
此密码提供的安全性较低。它旨在防止经过授权的用户和未经授权的用户使用 SQL Server 工具执行不正确的还原操作。但是不能防止通过其他方式或通过替换密码来读取备份数据。后续版本的 Microsoft SQL Server 将删除该功能。 请避免在新的开发工作中使用该功能,并着手修改当前还在使用该功能的应用程序。保护备份的最佳做法是将备份磁带存储在安全的位置,或者备份到由适当的访问控制列表 (ACL) 保护的磁盘文件。应该在创建备份的根目录下设置 ACL。 |