RESTORE FILELISTONLY (Transact-SQL)

返回由备份集内包含的数据库和日志文件列表组成的结果集。

注意注意

有关参数的说明,请参阅 RESTORE 参数 (Transact-SQL)

主题链接图标Transact-SQL 语法约定

语法

RESTORE FILELISTONLY 
FROM <backup_device> 
[ WITH 
 {
--Backup Set Options
   FILE = { backup_set_file_number | @backup_set_file_number } 
 | PASSWORD = { password | @password_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 } = { 'physical_backup_device_name' |
              @physical_backup_device_name_var } 
} 

参数

有关 RESTORE FILELISTONLY 参数的说明,请参阅 RESTORE 参数 (Transact-SQL)

结果集

客户端可以使用 RESTORE FILELISTONLY 获得备份集中所含文件的列表。此信息以结果集的形式返回,在结果集中每个文件占一行。

列名

数据类型

说明

LogicalName

nvarchar(128)

文件的逻辑名称。

PhysicalName

nvarchar(260)

文件的物理名称或操作系统名称。

Type

char(1)

文件的类型,其中包括:

L = Microsoft SQL Server 日志文件

D = SQL Server 数据文件

F = 全文目录

FileGroupName

nvarchar(128)

包含文件的文件组的名称。

Size

numeric(20,0)

当前大小(以字节为单位)。

MaxSize

numeric(20,0)

允许的最大大小(以字节为单位)。

FileID

bigint

文件标识符,在数据库中唯一。

CreateLSN

numeric(25,0)

创建文件时的日志序列号。

DropLSN

numeric(25,0) NULL

删除文件时的日志序列号。如果文件尚未删除,该值为 NULL。

UniqueID

uniqueidentifier

文件的全局唯一标识符。

ReadOnlyLSN

numeric(25,0) NULL

包含文件的文件组从读写属性更改为只读属性(最新更改)时的日志序列号。

ReadWriteLSN

numeric(25,0) NULL

包含文件的文件组从只读属性更改为读写属性(最新更改)时的日志序列号。

BackupSizeInBytes

bigint

文件的备份的大小(以字节为单位)。

SourceBlockSize

int

包含文件的物理设备(并非备份设备)的块大小(以字节为单位)。

FileGroupID

int

文件组的 ID。

LogGroupGUID

uniqueidentifier NULL

NULL。

DifferentialBaseLSN

numeric(25,0) NULL

对于差异备份,日志序列号大于或等于 DifferentialBaseLSN 的更改都包含在差异中。

对于其他备份类型,该值为 NULL。

有关日志序列号 (LSN) 的信息,请参阅日志序列号简介的介绍。

DifferentialBaseGUID

uniqueidentifier

对于差异备份,该值是差异基准的唯一标识符。

对于其他备份类型,该值为 NULL。

IsReadOnly

bit

1 = 文件为只读文件。

IsPresent

bit

1 = 文件出现在备份中。

TDEThumbprint

varbinary(32)

显示数据库加密密钥的指纹。加密程序的指纹是带有加密密钥的证书的 SHA-1 哈希。有关数据库加密的信息,请参阅了解透明数据加密 (TDE)

权限

在 SQL Server 2008 及更高版本中,获取有关备份集或备份设备的信息需要具有 CREATE DATABASE 权限。有关详细信息,请参阅 GRANT 数据库权限 (Transact-SQL)

在备份时,可以根据需要为介质集、备份集或这两者指定密码。如果已经在介质集或备份集上定义了密码,则必须在 RESTORE 语句中指定正确的密码。这些密码可防止未经授权的用户使用 Microsoft SQL Server 工具执行还原操作和向介质追加备份集。但是,密码不会阻止使用 BACKUP 语句的 FORMAT 选项覆盖介质。

安全说明安全说明

此密码提供的安全性较低。它旨在防止经过授权的用户或未经授权的用户使用 SQL Server 工具执行不正确的还原操作。但是不能防止通过其他方式或通过替换密码来读取备份数据。后续版本的 Microsoft SQL Server 将删除该功能。请避免在新的开发工作中使用该功能,并着手修改当前还在使用该功能的应用程序。保护备份的最佳做法是将备份磁带存储在安全的位置,或者备份到由适当的访问控制列表 (ACL) 保护的磁盘文件。ACL 应设置在创建备份的根目录下。

示例

下面的示例从名为 AdventureWorks2008R2Backups 的备份设备中返回信息。该示例使用 FILE 选项指定设备中的第二个备份集。

RESTORE FILELISTONLY FROM AdventureWorks2008R2Backups 
   WITH FILE=2;
GO