例: 読み取り/書き込みファイルのオンライン復元 (完全復旧モデル)

適用対象:SQL Server

この記事は、複数のファイルやファイル グループを含む、完全復旧モデルの SQL Server データベースに関連しています。

この例では、完全復旧モデルを使用する adbというデータベースに 3 つのファイル グループが含まれているとします。 ファイル グループ A は読み取り/書き込みが可能で、ファイル グループ B とファイル グループ C は読み取り専用です。 最初は、すべてのファイル グループがオンラインです。

ファイル グループ a1 のファイル A が損傷していると思われるので、データベース管理者は、データベースをオンライン状態のままで復元することにします。

Note

単純復旧モデルでは、読み取り/書き込みデータをオンライン復元することはできません。

復元シーケンス

オンライン復元シーケンスでは、オフライン復元シーケンスと同じ構文を使用します。

  1. ファイル a1をオンライン復元します。

    RESTORE DATABASE adb FILE = 'a1' FROM backup
    WITH NORECOVERY;
    

    この時点で、ファイル a1RESTORING 状態になり、ファイル グループ A はオフラインになります。

  2. ファイルの復元後、新しいログ バックアップを行い、ファイルがオフラインになったポイントがわかるようにしておきます。

    BACKUP LOG adb TO log_backup3;
    
  3. ログ バックアップをオンライン復元します。

    復元したファイル バックアップ以降、最新のログ バックアップ (前の手順で作成した log_backup3) までのすべてのログ バックアップを復元します。 最後のバックアップを復元した後、データベースを復旧します。

    RESTORE LOG adb FROM log_backup1 WITH NORECOVERY;
    RESTORE LOG adb FROM log_backup2 WITH NORECOVERY;
    RESTORE LOG adb FROM log_backup3 WITH NORECOVERY;
    RESTORE DATABASE adb WITH RECOVERY;
    

    ファイル a1 がオンラインになります。

追加の例