ファイル復元の実行 (単純復旧モデル)

青いデータベース ディスクを示すアイコン このトピックは、1 つ以上の読み取り専用セカンダリ ファイル グループが含まれている単純復旧モデルのデータベースのみに関連しています。

ファイル復元の目標は、データベース全体を復元することなく 1 つ以上の破損したファイルを復元することです。単純復旧モデルでは、読み取り専用ファイルだけにファイル バックアップがサポートされます。プライマリ ファイル グループと読み取り/書き込みセカンダリ ファイル グループは、データベース バックアップまたは部分バックアップを復元することで、常に一緒に復元されます。

ms190388.note(ja-jp,SQL.90).gifメモ :
詳細については、「データベースの全体復元の実行 (単純復旧モデル)」または「段階的な部分復元の実行」を参照してください。

SQL Server 2005 のすべてのエディションでは、データベースがオフラインのときにファイル復元を実行できます (オフライン ファイル復元)。SQL Server 2005 Standard Edition、SQL Server 2005 Express Edition、および SQL Server 2005 Workgroup Edition では、オフライン復元のみがサポートされるため、プライマリ ファイル グループに対してファイル復元を実行するときは、必ずデータベースをオフラインにしておく必要があります。SQL Server 2005 Enterprise Edition では、データベースが既にオフラインであれば、オフライン復元が使用されます。

SQL Server 2005 Enterprise Edition では、ファイル復元中にデータベースがオンラインであれば、データベースをオンラインにしたままファイル復元を実行できます。データベースがオンラインのときにファイルを復元および復旧することを、オンライン ファイル復元と呼びます。

ファイル復元のシナリオは次のとおりです。

  • オフライン ファイル復元
    オフライン ファイル復元では、破損したファイルまたはファイル グループを復元する間、データベースはオフラインになります。データベースは、復元シーケンスの最後にオンラインになります。
  • オンライン ファイル復元
    SQL Server 2005 Enterprise Edition では、データベースがオンラインのときは、ファイル復元は自動的にオンラインで実行されます。ただし、復元中のファイルが含まれているファイル グループはすべてオフラインです。オフライン ファイル グループ内のすべてのファイルが復旧されると、そのファイル グループは自動的にオンラインになります。オンライン復元の詳細については、「オンライン復元の実行」を参照してください。
    ms190388.note(ja-jp,SQL.90).gifメモ :
    データベースがオンラインのときは、データベースのプライマリ ファイル グループとすべての読み取り/書き込みファイル グループがすべてオンラインになっています。クエリや更新の対象にできるのは、オンラインのファイル グループだけです。復元中または復旧中のファイルを含むファイル グループなど、オフラインのファイル グループにアクセスしようとすると、エラーが発生します。

ファイルまたはファイル グループの復元

ファイル復元のシナリオは、次に示すように、適切なデータをコピーし、ロールフォワードして、復旧する単一の復元シーケンスで構成されます。

破損したファイルをファイル バックアップとファイルの差分バックアップから復元するには

  1. 破損した各ファイルを最新のファイル バックアップから復元します。

  2. 復元されたファイルごとに最新のファイルの差分バックアップを復元し、データベースを復旧します。

ファイルおよびファイル グループを復元するには

高度なトピック

ファイル復元用の Transact-SQL 復元シーケンス (単純復旧モデル)

次の Transact-SQL コードは、ファイル復元シナリオの復元シーケンスでの重要な RESTORE オプションを示しています。説明の目的に関係しない構文や詳細は、省略しています。

この復元シーケンスでは、2 つの操作を行います。1 つ目の操作では、A というセカンダリ ファイルを復元します。このファイルは、with NORECOVERY を指定して復元されます。2 つ目の操作では、BC という他の 2 つのファイルを復元します。これらのファイルは、with RECOVERY を使用して異なるバックアップ デバイスから復元します。

ファイル復元シーケンスは、次のとおりです。

RESTORE DATABASE <database> FILE = <name_of_file_A> 
   FROM <file_backup_of_file_A> 
   WITH NORECOVERY
RESTORE DATABASE <database> FILE=<name_of_file_B>, <name_of_file_C> 
   FROM <file_backup_of_files_B_and_C> 
   WITH RECOVERY
ms190388.note(ja-jp,SQL.90).gifメモ :
SQL Server 2005 Enterprise Edition を使用していて、ファイル復元のためにデータベースをオフラインにする場合は、ALTER DATABASE ステートメント (ALTER DATABASE <database_name> SET OFFLINE) を実行して復元シーケンスを開始する前に、データベースをオフラインにしてください。

参照

概念

差分バックアップと新しいファイル
ファイルの差分バックアップ
ファイルの完全バックアップ
バックアップの概要 (SQL Server)
SQL Server での復元と復旧の概要
SQL Server でのバックアップの復元と復旧の動作について
ファイルとファイル グループを使用したデータベースの拡張の管理
ファイルとファイル グループの使用

その他の技術情報

バックアップと復元の関連機能についての考慮事項
ファイルおよびファイル グループのデザイン
RESTORE (Transact-SQL)
SQL Server データベースの復元シーケンスの処理

ヘルプおよび情報

SQL Server 2005 の参考資料の入手

変更履歴

リリース 履歴

2006 年 7 月 17 日

変更内容 :
  • 旧版の「単純復旧モデルの復元シナリオ」のファイル復元の概要を組み込みました。