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