トップページへ PASSJ ブログへ
トップページへ
分科会
特集!
コミュニケーション
資格
セミナー・コンファレンス
インフォメーション



ビギナーボードリーダー:堀川 明

毎月第2、第4木曜日はボードリーダーからのレポートを掲載いたします。
 
   

2003年7月10日
『バックアップセットから情報を取得する命令 』

前回、RESTORE FILELISTONLY 命令について触れましたが、データベースのバッ クアップファイルの中に、どのようなバックアップデータが存在しているのか 調べる命令がいくつかあります。

このような命令の使い方を覚えておくと、データベースを復元する前に、どの バックアップファイルを使ったらよいのかなどの判断をすることができます。

SQL Server のデータベースバックアップ命令(BACKUP DATABASE 文や BACKUP LOG 命令)では、物理的なファイルに対して追記形式で記録されます(もちろ ん、オプション指定によって追記記録を止めることができます)。


BACKUP DATABASE PUBS TO DISK='D:\BACKUPDB\PUBS.BAK' WITH INIT

PUBS データベースのバックアップを実行し、バックアップファイルは D:\BACKUP\PUBS.BAK を使用します(ファイルがなければ作成されます)。
INIT オプションにより既存のバックアップ内容は破棄されます。


BACKUP DATABASE PUBS TO DISK='D:\BACKUPDB\PUBS.BAK'

PUBS データベースのバックアップを実行し、バックアップファイルは D:\BACKUP\PUBS.BAK を使用します(ファイルがなければ作成されます)。
オプションがありませんので、デフォルトの NOINIT オプションが指定された ものとして、既存のファイルに対して、追記形式で記録します。
ファイルの先頭から、1 番、2 番、3 番のように、バックアップセット(バッ クアップしたデータやログのこと)に番号が付けられます。


バックアップセットの情報を取得する命令には、以下のものがあります。

(1)RESTORE HEADERONLY 命令
   RESTORE HEADERONLY FROM DISK='D:\BACKUPDB\PUBS.BAK'
指定されたバックアップファイルの中に、どのようなバックアップセットが含 まれているのか調査し、報告します。
データベースの名前、バックアップの種類(完全バックアップやログバックア ップなどの区別)、バックアップを実行した日時などの情報が役立ちます。

(2)RESTORE FILELISTONLY 命令
 RESTORE FILELISTONLY FROM DISK='D:\BACKUPDB\PUBS.BAK' WITH FILE=1

FILEオプションで指定されたバックアップセット番号の、バックアップされ たデータベースのファイル名情報を表示します。
FILE オプションが省略されたときは、1 番目を調査します。

バックアップされたデータベース物理ファイルの完全パス情報や、論理ファイ ル名、ファイルの大きさなどの情報が得られます。
バックアップを実施したサーバーと、それを復元するサーバーが異なる場合は、 バックアップセットに含まれる論理ファイル名をどの物理ファイルとして復元 するのかを復元時に指定しなければいけません(RESTORE DATABASE 文の MOVE オプション)。

        MOVE '論理ファイル名' TO '物理ファイル名'

このような事前調査や、復元時のファイルのサイズ計算などを実行するときに、 この命令が使われます。


(3)RESTORE LABELONLY FROM TAPE=''\\.\TAPE0'
テープ型メディアに対して、そのメディアファミリの情報を調査し報告します。
巨大なデータベースを複数のテープにまたがってバックアップを実行したとき の各テープに記録された情報を調査します。

以上のような、バックアップセットから様々な情報を取得する命令があります。 ぜひお役立て下さい。


ボードリーダーレポート トップページへ

 

 
PASSJメールニュース 著作権ついて プライバシーポリシー リンクポリシー お問い合わせ
(C) 2005 Professional Association for SQL Server Japan. All rights reserved.