RESTORE HEADERONLY (Transact-SQL)
特定のバックアップ デバイス上にあるすべてのバックアップ セットについて、すべてのバックアップ ヘッダー情報を含む結果セットを返します。
メモ : |
---|
引数の説明については、「RESTORE の引数 (Transact-SQL)」を参照してください。 |
構文
RESTORE HEADERONLY
FROM <backup_device>
[ WITH
[ { CHECKSUM | NO_CHECKSUM } ]
[ [ , ] { CONTINUE_AFTER_ERROR | STOP_ON_ERROR } ]
[ [ , ] FILE = backup_set_file_number ]
[ [ , ] MEDIANAME = { media_name | @media_name_variable } ]
[ [ , ] MEDIAPASSWORD = { mediapassword |
@mediapassword_variable } ]
[ [ , ] PASSWORD = { password | @password_variable } ]
[ [ , ] REWIND ]
[ [ , ] { UNLOAD | NOUNLOAD } ]
]
[;]
<backup_device> ::=
{
{ logical_backup_device_name |
@logical_backup_device_name_var }
| { DISK | TAPE } = { 'physical_backup_device_name' |
@physical_backup_device_name_var }
}
引数
RESTORE HEADERONLY の引数の説明については、「RESTORE の引数 (Transact-SQL)」を参照してください。
結果セット
指定されたデバイス上にあるバックアップごとに、サーバーからヘッダー情報の行が送信されます。下に説明する列が含まれています。
メモ : |
---|
RESTORE HEADERONLY では、メディア上のすべてのバックアップ セットが確認されるため、大容量のテープ ドライブを使用している場合は結果セットの生成に時間がかかることがあります。バックアップ セットごとの情報を取得せずにメディアの内容をすばやく確認するには、RESTORE LABELONLY を使用するか、FILE = backup_set_file_number を指定してください。 |
メモ : |
---|
Microsoft Tape Format の特性により、その他のソフトウェア プログラムから作成されたバックアップ セットと Microsoft SQL Server のバックアップ セットが同じメディア上に記録されている場合がありますが、RESTORE HEADERONLY によって返される結果セットには、その他のバックアップ セットの情報も 1 件につき 1 行ずつ含まれます。 |
列名
データ型
SQL Server バックアップ セットの場合の説明
その他のバックアップ セットの場合の説明
BackupName
nvarchar(128)
バックアップ セット名。
データセット名。
BackupDescription
nvarchar(255)
バックアップ セットの説明。
データセットの説明。
BackupType
smallint
バックアップの種類。
1 = データベース
2 = トランザクション ログ
4 = ファイル
5 = データベースの差分
6 = ファイルの差分
7 = 部分
8 = 部分的な差分
バックアップの種類。
1 = 標準
5 = 差分
16 = 増分
17 = 毎日
ExpirationDate
datetime
バックアップ セットの失効日。
NULL
Compressed
tinyint
0 = いいえ (SQL Server ではソフトウェア圧縮はサポートされません)。
ソフトウェア ベースの圧縮によりバックアップ セットが圧縮されているかどうか。
1 = はい
0 = いいえ
Position
smallint
ボリューム内でのバックアップ セットの位置 (FILE = のオプションで使用)。
ボリューム内でのバックアップ セットの位置。
DeviceType
tinyint
バックアップ操作で使用するデバイスに対応する値。
ディスク:
2 = 論理
102 = 物理
テープ:
5 = 論理
105 = 物理
仮想デバイス:
7 = 論理
107 = 物理
論理デバイス名とデバイス番号は、sys.backup_devices で確認できます。詳細については、「sys.backup_devices (Transact-SQL)」を参照してください。
NULL
UserName
nvarchar(128)
バックアップ操作を実行したユーザーの名前。
バックアップ操作を実行したユーザーの名前。
ServerName
nvarchar(128)
バックアップ セットを作成したサーバーの名前。
NULL
DatabaseName
nvarchar(128)
バックアップの作成元であるデータベースの名前。
NULL
DatabaseVersion
int
バックアップの作成元であるデータベースのバージョン。
NULL
DatabaseCreationDate
datetime
データベースが作成された日時。
NULL
BackupSize
numeric(20,0)
バックアップのサイズ (バイト単位)。
NULL
FirstLSN
numeric(25,0)
バックアップ セット内にある先頭のログ レコードのログ シーケンス番号。
NULL
LastLSN
numeric(25,0)
バックアップ セットの次にあるログ レコードのログ シーケンス番号。
NULL
CheckpointLSN
numeric(25,0)
バックアップが作成された時点における最新チェックポイントのログ シーケンス番号。
NULL
DatabaseBackupLSN
numeric(25,0)
データベース全体の最新バックアップのログ シーケンス番号。
DatabaseBackupLSN は、バックアップの開始時に発生した "チェックポイントの先頭"を表します。データベースがアイドル状態で、レプリケーションが構成されていないときにバックアップが実行された場合、このログ シーケンス番号は FirstLSN と同じになります。
NULL
BackupStartDate
datetime
バックアップ操作が開始した日時。
メディアの書き込み日付。
BackupFinishDate
datetime
バックアップ操作が終了した日時。
メディアの書き込み日付。
SortOrder
smallint
サーバーの並べ替え順。この列はデータベース バックアップのみで有効です。これは旧バージョンとの互換性のために用意されています。
NULL
CodePage
smallint
サーバーが使用するサーバー コード ページまたは文字セット。
NULL
UnicodeLocaleId
int
Unicode 文字データの並べ替えに使用する、サーバー Unicode ロケール ID 構成オプション。これは旧バージョンとの互換性のために用意されています。
NULL
UnicodeComparisonStyle
int
Unicode データの並べ替えに詳細な設定を追加できる、サーバー Unicode 比較スタイル構成オプション。これは旧バージョンとの互換性のために用意されています。
NULL
CompatibilityLevel
tinyint
バックアップの作成元であるデータベースの互換性レベル設定。
NULL
SoftwareVendorId
int
ソフトウェア ベンダの識別番号。SQL Server の場合、この値は 4608 (16 進数では 0x1200) です。
ソフトウェア ベンダの識別番号。
SoftwareVersionMajor
int
バックアップ セットを作成したサーバーのメジャー バージョン番号。
バックアップ セットを作成したソフトウェアのメジャー バージョン番号。
SoftwareVersionMinor
int
バックアップ セットを作成したサーバーのマイナ バージョン番号。
バックアップ セットを作成したソフトウェアのマイナ バージョン番号。
SoftwareVersionBuild
int
バックアップ セットを作成したサーバーのビルド番号。
NULL
MachineName
nvarchar(128)
バックアップ操作を実行したコンピュータの名前。
バックアップ操作を実行したコンピュータの種類。
Flags
int
フラグの各ビットが 1 に設定された場合、フラグによって表される 10 進数の意味は次のとおりです。
1 = 一括ログ記録操作を含むログ バッグアップ。
2 = スナップショット バックアップ。
4 = バックアップ時データベースが読み取り専用。
8 = バックアップ時データベースがシングル ユーザー モード。
16 = バックアップ チェックサムを含むバックアップ。
32 = データベースがバックアップ時に損傷したが、エラーに関係なくバックアップ操作の続行が要求された。
64 = ログ末尾のバックアップ。
128 = 不完全なメタデータでのログ末尾のバックアップ。
256 = NORECOVERY でのログ末尾のバックアップ。
重要 :
Flags ではなく、下に示す HasBulkLoggedData から IsCopyOnly までのブール値をとる各列の使用をお勧めします。
NULL
BindingID
uniqueidentifier
データベースに割り当てられたバインド ID。これは sys.databasesdatabase_guid に対応します。データベースが復元されると、新しい値が割り当てられます。下の FamilyGUID も参照してください。
NULL
RecoveryForkID
uniqueidentifier
最後の復旧分岐の ID。この列は、backupset テーブル内の last_recovery_fork_guid に対応します。
データのバックアップでは、RecoveryForkID は FirstRecoveryForkID と同じです。
NULL
Collation
nvarchar(128)
データベースで使用されている照合順序。
NULL
FamilyGUID
uniqueidentifier
元のデータベースに関する作成時の ID。この値は、データベースが復元されても変わりません。
NULL
HasBulkLoggedData
bit
1 = 一括ログ操作を含むログ バッグアップ。
NULL
IsSnapshot
bit
1 = スナップショット バックアップ。
NULL
IsReadOnly
bit
1 = バックアップ時データベースが読み取り専用。
NULL
IsSingleUser
bit
1 = バックアップ時データベースがシングル ユーザー モード。
NULL
HasBackupChecksums
bit
1 = バックアップ チェックサムを含むバックアップ。
NULL
IsDamaged
bit
1 = データベースがバックアップ時に損傷したが、エラーに関係なくバックアップ操作の続行が要求された。
NULL
BeginsLogChain
bit
1 = 連鎖的なログ バックアップの先頭。データベースが作成された後、または単純復旧モデルが完全復旧モデルや一括ログ復旧モデルに切り替わった後、最初に行われるログ バックアップを先頭にして、ログ チェーンが形成されます。
NULL
HasIncompleteMetaData
bit
1 = 不完全なメタデータを使用したログ末尾のバックアップ。
不完全なメタデータを使用したログ末尾のバックアップについては、「ログ末尾のバックアップ」を参照してください。
NULL
IsForceOffline
bit
1 = NORECOVERY を使用したバックアップ。データベースはバックアップによってオフラインになりました。
NULL
IsCopyOnly
bit
1 = コピーのみのバックアップ。
コピーのみのバックアップを行っても、データベースの全体的なバックアップと復元の手順に影響はありません。詳細については、「コピーのみのバックアップ」を参照してください。
NULL
FirstRecoveryForkID
uniqueidentifier
最初の復旧分岐の ID。この列は、backupset テーブルの first_recovery_fork_guid に対応します。
データのバックアップでは、FirstRecoveryForkID は RecoveryForkID と同じです。
NULL
ForkPointLSN
numeric(25,0) NULL
FirstRecoveryForkID が RecoveryForkID と同じでない場合の、分岐ポイントのログ シーケンス番号。これらが同じ場合は、NULL になります。
NULL
RecoveryModel
nvarchar(60)
データベースの復旧モデル。次のいずれかになります。
FULL
BULK-LOGGED
SIMPLE
NULL
DifferentialBaseLSN
numeric(25,0) NULL
シングル ベースの差分バックアップの場合、差分ベースの FirstLSN と同じ値になります。DifferentialBaseLSN 以上のログ シーケンス番号の変更は差分に取り込まれます。
マルチ ベースの差分バックアップの場合、この値は NULL です。ベース ログ シーケンス番号はファイル レベルで決定される必要があります。詳細については、「RESTORE FILELISTONLY (Transact-SQL)」を参照してください。
差分バックアップ以外の種類のバックアップの場合は常に NULL。
詳細については、「差分バックアップの基になるバックアップ」を参照してください。
NULL
DifferentialBaseGUID
uniqueidentifier
シングル ベースの差分バックアップの場合は、差分ベースの一意識別子。
マルチ ベースの差分バックアップの場合は、NULL。差分のベースはファイルごとに決定する必要があります。
差分バックアップ以外のバックアップの場合は NULL。
NULL
BackupTypeDescription
nvarchar(60)
バックアップの種類を表す文字列。次のいずれかになります。
DATABASE
TRANSACTION LOG
FILE OR FILEGROUP
DATABASE DIFFERENTIAL
FILE DIFFERENTIAL PARTIAL
PARTIAL DIFFERENTIAL
バックアップの種類を表す文字列。次のいずれかになります。
NORMAL
DIFFERENTIAL
INCREMENTAL
DAILY
BackupSetGUID
uniqueidentifier NULL
メディア上のバックアップ セットを識別する、バックアップ セットの一意識別番号。
NULL
メモ : |
---|
バックアップ セットにパスワードが定義されている場合、RESTORE HEADERONLY によって完全な情報が返されるのは、コマンドの PASSWORD オプションと同じパスワードが指定されているバックアップ セットに対してのみです。また保護されていないバックアップ セットについても、RESTORE HEADERONLY では完全な情報が返されます。メディア上にある、他のパスワードで保護されているバックアップ セットについては、BackupName 列に '***Password Protected***' という文字列が設定され、他の列は NULL になります。 |
解説
クライアントは RESTORE HEADERONLY を使用して、特定のバックアップ デバイス上のすべてのバックアップについて、バックアップ ヘッダーに関するすべての情報を取得できます。バックアップ デバイス上にあるバックアップごとに、ヘッダー情報が 1 行のデータとしてサーバーから送信されます。
権限
すべてのユーザーが RESTORE HEADERONLY を使用できます。
バックアップ操作では、オプションで、メディア セットとバックアップ セットにそれぞれパスワードを設定できます。メディア セットまたはバックアップ セットにパスワードが設定されている場合は、RESTORE ステートメントで正しいパスワードを指定する必要があります。これらのパスワードを設定しておくと、Microsoft SQL Server 2005 ツールを使って不正に復元操作が行われたり、メディアにバックアップ セットが不正に追加されるのを防ぐことができます。ただし、BACKUP ステートメントで FORMAT オプションが使用された場合、メディアの上書きを防ぐことはできません。
セキュリティ メモ : |
---|
パスワードによる保護は強力なものではありません。パスワードによる保護は、権限の有無にかかわらず、ユーザーが SQL Server 2005 ツールを使用して不適切な復元を行わないようにすることを目的としています。その他の手段によるバックアップ データの読み取りやパスワードの置き換えを防ぐわけではありません。バックアップ保護に最適な方法は、バックアップ テープを安全な場所に保管するか、バックアップしたディスク ファイルを適切なアクセス制御リスト (ACL) で保護することです。ACL は、バックアップを作成するディレクトリのルートに設定する必要があります。 |
例
次の例では、ディスク ファイル C:\AdventureWorks-FullBackup.bak
のヘッダー情報を返します。
RESTORE HEADERONLY
FROM DISK = N'C:\AdventureWorks-FullBackup.bak'
WITH NOUNLOAD;
GO
参照
関連項目
BACKUP (Transact-SQL)
backupset (Transact-SQL)
RESTORE REWINDONLY (Transact-SQL)
RESTORE VERIFYONLY (Transact-SQL)
RESTORE (Transact-SQL)
その他の技術情報
バックアップ情報の表示
差分バックアップの基になるバックアップ
バックアップのチェックサムを有効または無効にする方法 (Transact-SQL)
ログ シーケンス番号の概要
ログ シーケンス番号と復元プラン
メディア セット、メディア ファミリ、およびバックアップ セット
復旧モデルの概要
復旧パス