リストア処理のタイプ
SnapCenter を使用すると、 SQL Server リソースに対してさまざまなタイプのリストア処理を実行できます。
-
最新の状態へのリストア
-
過去のポイントインタイムへのリストア
最新の状態へのリストアまたは過去の特定の時点へのリストアは、次の状況で実行できます。
-
SnapMirrorまたはSnapVaultセカンダリストレージからリストア
-
別のパス(場所)にリストアする
|
SnapCenter はボリュームベースの SnapRestore をサポートしていません。 |
最新の状態へのリストア
最新の状態へのリストア処理(デフォルト)では、障害発生時点までデータベースがリカバリされます。SnapCenter では、この処理が次の順序で行われます。
-
データベースをリストアする前に、最後のアクティブトランザクションログをバックアップします。
-
選択したフルデータベースバックアップからデータベースをリストアします。
-
データベースにコミットされていないすべてのトランザクションログ(バックアップ作成時から現時点までのバックアップのトランザクションログを含む)が適用されます。
トランザクションログは先に移動され、選択したデータベースに適用されます。
最新の状態へのリストア処理では、連続するトランザクションログセットが必要です。
SnapCenter では、ログ配布バックアップファイルから SQL Server データベーストランザクションログをリストアできないため(ログ配布はプライマリサーバインスタンス上のプライマリデータベースから別のセカンダリサーバインスタンス上の 1 つ以上のセカンダリデータベースにトランザクションログバックアップを自動的に送信する機能です)。 トランザクションログバックアップから最新の状態へのリストア処理を実行することはできません。このため、 SnapCenter を使用して SQL Server データベースのトランザクションログファイルをバックアップする必要があります。
すべてのバックアップに対して最新の状態へのリストア機能を実行する必要がない場合は、バックアップポリシーを使用してシステムのトランザクションログバックアップの保持を設定できます。
最新の状態へのリストア処理の例
SQL Serverバックアップを毎日正午に実行し、水曜日の午後4時にバックアップからリストアする必要があるとします。何らかの理由により、水曜日の正午のバックアップの検証に失敗したため、火曜日の正午のバックアップを使用してリストアを実行することにしました。その後、バックアップがリストアされると、火曜日のバックアップの作成時にコミットされていなかったトランザクションログから、水曜日の午後4時に書き込まれた最新のトランザクションログまで、すべてのトランザクションログが転送され、リストアしたデータベースに適用されます。 (トランザクションログがバックアップされている場合)。
過去のポイントインタイムへのリストア
ポイントインタイムリストア処理では、データベースは過去の特定の時刻にのみリストアされます。ポイントインタイムリストア処理は、次の状況で実行されます。
-
データベースは、バックアップトランザクションログの所定の時間にリストアされます。
-
データベースがリストアされ、一部のバックアップトランザクションログのみが適用されます。
|
ある時点までデータベースをリストアすると、新しいリカバリパスが発生します。 |
次の図は、ポイントインタイムリストア処理を実行した場合の問題を示しています。
![前のポイントインタイムにリストアします](../media/point_in_time_recovery_path.gif)
この図のリカバリパス1では、フルバックアップが作成され、その後に複数のトランザクションログバックアップが作成されます。データベースをある時点にリストアします。ポイントインタイムリストア処理のあとに新しいトランザクションログバックアップが作成され、リカバリパス2が発生します。新しいトランザクションログバックアップは、新しいフルバックアップを作成せずに作成されます。データの破損やその他の問題が原因で、新しいフルバックアップが作成されるまで現在のデータベースをリストアすることはできません。また、リカバリパス2で作成されたトランザクションログを、リカバリパス1のフルバックアップに適用することはできません。
トランザクションログバックアップを適用する場合は、バックアップトランザクションの適用を停止する日時を指定することもできます。このためには、指定可能な範囲内の日時を指定します。指定した時点より前にコミットされていないトランザクションは SnapCenter によって削除されます。この方法を使用すると、破損が発生する前の時点にデータベースをリストアしたり、誤って削除したデータベースやテーブルをリカバリしたりすることができます。
ポイントインタイムリストア処理の例
フルデータベースバックアップを午前0時に1回、トランザクションログバックアップを1時間ごとに作成するとします。午前9時45分にデータベースがクラッシュしましたが、障害が発生したデータベースのトランザクションログは引き続きバックアップされます。ポイントインタイムリストアのシナリオは、次の中から選択できます。
-
午前0時に作成されたフルデータベースバックアップをリストアし、それ以降に行われたデータベース変更は失われます。(オプション: None )
-
フルデータベースバックアップをリストアし、午前9時45分までのすべてのトランザクションログバックアップを適用します(オプション:Log until)
-
フルデータベースバックアップをリストアし、トランザクションログバックアップを適用します。最後のトランザクションログバックアップセットからトランザクションをリストアする時間を指定します。(オプション: By specific time )
この場合、特定のエラーが報告された日時を計算します。指定した日時より前にコミットされていなかったトランザクションはすべて削除されます。