RESTORE ステートメント - FILELISTONLY (Transact-SQL)

適用対象:SQL ServerAzure SQL Managed Instance

SQL Server のバックアップ セットに保存されているデータベースとログ ファイルのリストを含んだ結果セットを返します。

Note

引数の説明については、「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 }   
 | [ METADATA_ONLY | SNAPSHOT ] [ DBNAME = { database_name | @database_name_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 | URL } = { 'physical_backup_device_name' |  
       @physical_backup_device_name_var }   
}  

Note

URL は、Microsoft Azure Blob Storage の場所とファイル名を指定するために使用される形式であり、SQL Server 2012 (11.x) SP1 CU2 以降でサポートされています。 Microsoft Azure ストレージはサービスですが、実装はディスクやテープと似ており、3 つのデバイスすべてで一貫したシームレスな復元エクスペリエンスを実現できます。

引数

RESTORE FILELISTONLY 引数の説明については、「RESTORE の引数 (Transact-SQL)」を参照してください。

結果セット

クライアントでは、RESTORE FILELISTONLY を使用して、バックアップ セットに含まれるファイルの一覧を取得できます。 この情報は、ファイル 1 件あたり 1 行のデータで構成される結果セットとして返されます。

列名 データ型 説明
LogicalName nvarchar(128) ファイルの論理名です。
PhysicalName nvarchar(260) ファイルの物理名またはオペレーティング システム名です。
Type char(1) ファイルの種類。次のいずれかになります。

L = Microsoft SQL Server ログ ファイル

D = SQL Server データ ファイル

F = フルテキスト カタログ

S = FileStream、FileTable、またはインメモリ OLTP コンテナー
FileGroupName nvarchar(128) NULL このファイルを含むファイル グループの名前。
サイズ 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 です。
DifferentialBaseGUID uniqueidentifier NULL 差分ベースの一意識別子 (差分バックアップの場合)。

その他の種類のバックアップの場合、この値は NULL です。
IsReadOnly bit 1 = ファイルは読み取り専用。
IsPresent bit 1 = ファイルはバックアップ済み。
TDEThumbprint varbinary(32) NULL データベース暗号化キーの拇印を表示します。 暗号化の拇印とは、キーの暗号化で使用された証明書の SHA-1 ハッシュです。 データベース暗号化の詳細については、「Transparent Data Encryption (TDE)」を参照してください。
SnapshotURL nvarchar(360) NULL 適用対象: SQL Server (SQL Server 2016 (13.x) (CU1) から現在のバージョンまで)。

FILE_SNAPSHOT バックアップに含まれているデータベース ファイルの Azure のスナップショットの URL。 FILE_SNAPSHOT バックアップがない場合は、NULL を返します。

セキュリティ

バックアップ操作では、オプションで、メディア セットとバックアップ セットにそれぞれパスワードを設定できます。 メディア セットまたはバックアップ セットにパスワードが設定されている場合は、RESTORE ステートメントで正しいパスワードを指定する必要があります。 これらのパスワードによって、Microsoft SQL Server ツールを使用して不正に復元操作が行われたり、メディアにバックアップ セットが不正に追加されたりするのを防ぎます。 ただし、BACKUP ステートメントで FORMAT オプションが使用された場合、パスワードでメディアの上書きを防ぐことはできません。

重要

パスワードによる保護は強力なものではありません。 権限の有無にかかわらず、ユーザーが SQL Server ツールを使用して不適切な復元を行わないようにすることを目的としています。 その他の手段によるバックアップ データの読み取りやパスワードの置き換えを防ぐわけではありません。 この機能は、 SQL Serverの将来のバージョンで削除される予定です。 新規の開発作業ではこの機能を使用しないようにし、現在この機能を使用しているアプリケーションは修正することを検討してください。 バックアップ保護に最適な方法は、バックアップ テープを安全な場所に保管するか、バックアップしたディスク ファイルを適切なアクセス制御リスト (ACL) で保護することです。 ACL は、バックアップを作成するディレクトリのルートに設定する必要があります。

アクセス許可

SQL Server 2008 (10.0.x) 以降では、バックアップ セットやバックアップ デバイスに関する情報の取得には CREATE DATABASE 権限が必要になります。 詳細については、GRANT データベースの権限の許可 (Transact-SQL) に関する記事を参照してください。

次の例は、AdventureWorksBackups というバックアップ デバイスから情報を返します。 この例では FILE オプションを使用して、デバイスで 2 番目のバックアップ セットを指定しています。

RESTORE FILELISTONLY FROM AdventureWorksBackups   
   WITH FILE=2;  
GO  

参照

BACKUP (Transact-SQL)
メディア セット、メディア ファミリ、およびバックアップ セット (SQL Server)
RESTORE REWINDONLY (Transact-SQL)
RESTORE VERIFYONLY (Transact-SQL)
RESTORE (Transact-SQL)
バックアップの履歴とヘッダーの情報 (SQL Server)