適用対象:SQL Server
SQL Server のバックアップと復元の操作は、データベースの復旧モデルのコンテキスト内で発生します。 復旧モデルは、トランザクション ログのメンテナンスを制御するように設計されています。 復旧モデル は、トランザクションをログに記録する方法、トランザクション ログのバックアップを必須 (および可能) にするかどうか、利用できる復元操作の種類などを制御するデータベース プロパティです。
単純、完全、一括ログの 3 つの復旧モデルがあります。 通常、データベースには完全復旧モデルまたは単純復旧モデルが使用されます。 データベースは、任意の時点で別の復旧モデルに切り替えることができます。
復旧モデルの概要
次の表に、3 つの復旧モデルの概要を示します。
| 復旧モデル | 説明 | 作業の損失の可能性 | 指定日時への復旧 |
|---|---|---|---|
| 簡易 | ログ バックアップはありません。 領域要件を低く保つためにログ領域を自動的に再利用するため、基本的にトランザクション ログ領域を管理する必要がなくなります。 単純復旧モデルでのデータベース バックアップの詳細については、「 データベースの完全バックアップ (SQL Server)」を参照してください。 トランザクション ログ バックアップを必要とする操作は、単純復旧モデルではサポートされていません。 単純復旧モデルで使用できない機能を次に示します。 - ログ配布 - Always On 可用性グループとデータベース ミラーリング - データ損失のないメディアの復旧 - ポイントインタイム リストア |
最新のバックアップ以降の変更は保護されません。 障害が発生した場合は、それらの変更を再実行する必要があります。 | バックアップの終了時点にのみ復旧できます。 詳細については、「 データベースの完全な復元 (単純復旧モデル)」を参照してください。 |
| 完全 | ログ バックアップが必要です。 データ ファイルの消失や損傷によって作業が失われることはありません。 任意の時点 (たとえば、アプリケーションまたはユーザー エラーの前) に回復できます。 完全復旧モデルでのデータベース バックアップの詳細については、「データベース の完全バックアップ (SQL Server) 」および「 データベースの完全復元 (完全復旧モデル)」を参照してください。 |
通常はありません。 ログの末尾が損傷している場合は、最新のログ バックアップ以降の変更を再実行する必要があります。 |
特定の時点に復旧できます (その時点までのバックアップが完全である場合)。 ログ バックアップを使用して障害発生時点に復元する方法については、「 SQL Server データベースを特定の時点に復元する (完全復旧モデル)」を参照してください。 手記: 論理的に一貫性が必要な完全復旧モデル データベースが 2 つ以上ある場合は、これらのデータベースの回復性を確保するために特別な手順を実装する必要があります。 詳細については、 マークされたトランザクションを含む関連データベースの回復を参照してください。 |
| 一括ログ記録 | ログ バックアップが必要です。 完全復旧モデルを補完するためのもので、パフォーマンスに優れた一括コピー操作を実行できます。 ほとんどの一括操作で最小ログ記録を使用して、使用されるログ領域を縮小します。 最小限のログ記録が可能な操作の詳細については、 トランザクション ログを参照してください。 ログ バックアップは、最小ログ記録操作がログ バックアップにキャプチャされるため、大きくなる可能性があります。 一括ログ復旧モデルでのデータベース バックアップの詳細については、「 データベースの完全バックアップ (SQL Server) 」および「 データベースの完全復元 (完全復旧モデル)」を参照してください。 |
ログが破損している場合、または最新のログ バックアップ以降に一括ログ操作が発生した場合は、その最後のバックアップ以降の変更を再実行する必要があります。 それ以外の場合は、作業が失われることはありません。 | バックアップの終了時点に復旧できます。 [特定の時点に復旧] はサポートされていません。 |