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

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

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

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

注意

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

復元シーケンス

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

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

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

  2. ファイルの復元後、データベース管理者は新しいログ バックアップを行い、ファイルをオフラインにしたポイントがわかるようにしておきます。

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

    復元したファイル バックアップ以降、最新のログ バックアップ (手順 2. で作成した 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 LOG adb WITH RECOVERY;
    
    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 LOG adb WITH RECOVERY;
    

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