RESTORE ステートメント - FILELISTONLY (Transact-SQL)
適用対象: SQL Server Azure SQL Managed Instance
SQL Server のバックアップ セットに保存されているデータベースとログ ファイルのリストを含んだ結果セットを返します。
Note
引数の説明については、「RESTORE の引数 (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)