データベースが削除または破損した場合、次のいずれかの方法で復元できます。
- 完全復元オペレーションを実行する
- クローンを作成するか、データベースを仮想アプリケーションとしてほぼ瞬時にマウントし、元の場所または新しい場所に移行します。データベースをマウントして移行するには、SQL Server のマウントと移行をご覧ください。
復元プロセスはウィザードで実行されます。Always On 可用性グループ(AG)のメンバーなどの単一のデータベース イメージを復元するか、SQL インスタンス内の複数のイメージを復元するかによって、プロセスが若干異なります。
始める前に
このセクションの手順を実行する前に、次のことを確認してください。
データベースが緊急モードになっていない。
実行中のジョブが完了するまで待ちます。
Microsoft SQL Server データベースの復元概要
復元機能は、元の本番環境データベースのデータを、選択した特定の時点のイメージまたはバックアップ ボルトのイメージに置き換えます。この復元により、データベースはイメージが作成された時点の状態に復元されるため、現在のデータベース データはすべて失われます。この操作は元に戻せません。
復元オペレーションは通常、データ破損イベントの後にデータベースを有効な状態に復元するために実行されます。復元オペレーションの完了に必要な時間は、関連するデータの量によって異なります。
Microsoft SQL Server の完全復元モデルを使用するデータベースでは、単一のポリシーを使用してデータベースとそのログの両方をキャプチャします。このようなデータベースは、ログをロール フォワードすることで任意の時点に復元できます。管理コンソールで [Restore With Recovery] を指定してデータベースを復元すると、ログの適用後に SQL Server データベースが復元され、オンラインになります。
Backup and DR は、Microsoft SQL Server データベースとインスタンスを復元する際に、次の一般的なユースケースをサポートしています。
インプレース データベースの復元を実行する: 本番環境のデータベースまたはインスタンスが破損したが、まだオンラインである場合は、復元オペレーションを実行します。
仮想アプリケーションを使用する(仮想アプリケーションのマウント): 破損した SQL Server インスタンスまたはデータベースの最後に正常に動作したバージョンの仮想アプリケーション マウントを使用すると、ユーザーとアプリケーションが可能な限り早く作業を再開できます。その後、マウントと移行を使用してデータベースをバックグラウンドで移行できます。SQL Server のマウントと移行をご覧ください。
Microsoft SQL インスタンスとデータベースを復元する
これは最もシンプルで一般的な復元シナリオです。この場合、以前のイメージから選択した SQL データベースを元のデータベース サーバーに復元します。このタイプの復元では、データベースがオンラインである必要があります。データベースがオンラインでない場合、データベースの検証時に復元オペレーションが失敗します。この場合は、代わりにデータベースのクローンを作成します。
この手順を実行するには:
Microsoft SQL Server データベースがオンラインである必要があります。データベースがオンラインでない場合、データベースの検証時に復元オペレーションが失敗します。
実行中のジョブが完了するまで待ちます。
SQL Server データベースを復元するには:
[App Manager] を開き、[アプリケーション] ページに移動します。
復元する Microsoft SQL Server データベースを右クリックし、プルダウン リストから [アクセス] を選択します。[アクセス] ページが開き、キャプチャされたイメージがタイムライン ランプビューに一覧表示されます。復元オペレーションをサポートするイメージタイプには、Snapshot と OnVault がありますが、イメージをキャプチャしたのと同じアプライアンスを使用する場合に限ります。
別のアプライアンスで復元する必要がある場合は、代わりにクローン作成オペレーションを使用します。
SQL Server データベースとトランザクション ログ ファイルを含むスナップショット イメージが区別できるように表示され、ログの復元範囲の期間も示されます。
イメージを選択し、オペレーションのリストから [復元] を選択します。[Restore] ページが開きます。
この復元オペレーションでは、[従来型] を選択します。
選択したデータベースにログがない場合、[復元] ページにロール フォワード オプションは表示されません。[ログ保護バックアップ] テンプレートを使用して SQL Server データベースが管理されており、イメージでログが利用可能な場合は、次のことができます。
ユーザー時間またはホスト時間を使用して、ロール フォワードを指定します。ユーザー時間またはホスト時間の日時に基づいて設定できます。ユーザー時間は、現在の画面の閲覧者が基準になります。ホスト時間は、復元されるデータをホストするシステムが基準になります。
カレンダー ツールを使用して、ロールフォワード オペレーションの日付を選択します。
[Restore Range] スライダーを使用して、選択した日付の特定の時間を選択し、データベースを復元します。スライダー ツールを一番左まで動かし、最も古い日付を選択すると、ログをロールフォワードせずに SQL Server データベースだけを復元できます。
データベースを復元モードのままにする場合は、[Restore With Recovery] チェックボックスをオフにします。[Restore with recovery] では、復元されたデータベースがオンラインになります。オンラインになった後にログを適用することはできません。
[送信] をクリックします。
警告ダイアログが開きます。内容を読んでから、[DATA LOSS] と入力して確定します。復元ジョブが開始されます。[System Monitor] でジョブ ステータスを表示して、復元オペレーションが成功したことを確認できます。
SQL システム データベースを復元する
Backup and DR は、SQL Server ユーザー データベースと同様に、Microsoft SQL システム データベースを検出してバックアップできます。
SQL システム データベースを復元するには、まずそのデータベースの最後に確認された正常なバージョンをマウントし、ファイル コピー オペレーションを使用して、正常な SQL Server システム データベースの .mdf ファイルと .ldf ファイルを、破損した SQL システム データベースをホストするソース SQL サーバーにコピーする必要があります。
バックアップと DR サービスの管理コンソールで、[App Manager] をクリックし、プルダウン メニューから [アプリケーション] を選択します。
[アプリケーション] ページが開きます。
整合性グループの最後に既知の良好なイメージを選択してマウントします。[Create new virtual application] の選択を解除してください。
可能であれば、次のサンプルクエリを使用して、データベースのファイル ロケーションを表示します。
SELECT name, physical_name AS current_file_location FROM sys.master_files
SQL インスタンスから、SQL Server 構成マネージャーまたは Services MMC を使用して、ソース SQL インスタンスを停止します。
Windows エクスプローラなどの方法で、SQL システム データベースのマウントされたバックアップに移動します。
復元するデータベースのマウントされた .mdf ファイルと .ldf ファイルをコピーします。
Windows エクスプローラなどの方法で、移行元の SQL Server データベースに移動します。
.mdf ファイルと .ldf ファイルをソース SQL Server データベースに貼り付けます。
SQL インスタンスから、SQL Server 構成マネージャーまたは Services MMC を使用して、ソース SQL Server データベースを再起動します。
SQL Server クラスタに復元する
SQL Server フェイルオーバー インスタンスの場合、データベースは常にアクティブ ノードに復元されます。SQL Server 可用性グループの場合、復元はすべてのノードで実行されます。
整合性グループ内の SQL Server データベースを復元する
整合性グループで Microsoft SQL Server データベースを復元する場合は注意が必要です(整合性グループの復元をご覧ください)。整合性グループ内の SQL Server データベースを復元すると、整合性グループ内のすべてのデータベースが上書きされます。
Backup and DR Microsoft SQL Server DBA ガイド
このページは、Backup and DR を使用して Microsoft SQL Server データベースを保護および復元する方法に固有の一連のページの一つです。詳細については、以下をご覧ください。
- Microsoft SQL Server データベースのバックアップと DR
- Backup and DR サービス用に SQL Server データベースを準備する
- SQL Server データベース ホストを追加してデータベースを検出する
- Microsoft SQL Server インスタンスとデータベースのバックアップ プランを構成する
- Microsoft SQL Server インスタンスとデータベースのアプリケーションの詳細と設定
- SQL Server データベースをマウントする
- データベースを SQL Always On 可用性グループにマウントする
- アクティブなマウントを管理する
- SQL Server データベースを移行する
- SQL Server データベースのクローンを作成する
- SQL Server バックアップを復元する