トランザクション ログ バックアップの作成

このトピックは、完全復旧モデルまたは一括ログ復旧モデルを使用するデータベースのみに関連しています。

このトピックでは、トランザクション ログのバックアップの考慮事項を説明し、ログ バックアップを作成する手順を説明しているトピックへのリンクを提供します。トランザクション ログ バックアップの詳細については、「トランザクション ログのバックアップ」を参照してください。

トランザクション ログのバックアップ条件

少なくとも 1 つの完全バックアップがないと、ログ バックアップを作成できません。完全バックアップがあれば、他のバックアップを実行中でもトランザクション ログをバックアップできます。ただし、他のログ バックアップ中は除きます。作業損失の可能性を最小限に抑えるだけでなく、ログの切り捨てもできるように、ログ バックアップを頻繁に行うことをお勧めします。

通常、データベースを復元する前に、ログの末尾をバックアップする必要があります。ログ末尾のバックアップを作成する方法、および、ログ末尾のバックアップが不要な場合の条件の詳細については、「ログ末尾のバックアップ」を参照してください。

一連のログ バックアップの動作

データベース管理者は、通常、定期的に (たとえば毎週) データベースの完全バックアップを作成します。必要に応じて、管理者は、さらに短い間隔で (たとえば毎日) 差分バックアップを作成し、トランザクション ログ バックアップは頻繁に (たとえば 10 分おきに) 作成します。どの程度の間隔でバックアップを作成すれば最適であるかは、データの重要度やデータベースのサイズ、サーバーの作業負荷によって異なります。

トランザクション ログが破損すると、前回のログ バックアップ以降に行われた作業が失われます。このことは、フォールト トレランス ストレージにログ ファイルを配置することの重要性を示しています。

トランザクション ログのバックアップ シーケンスは、データベースの完全バックアップとは関連がありません。トランザクション ログの一連のバックアップを作成してから定期的にデータベースの完全バックアップを作成し、これを使用して復元操作を開始します。たとえば、次の一連のイベントが発生したとします。

時刻

イベント

午前 8 時

データベースのバックアップ。

正午

トランザクション ログのバックアップ。

午後 4 時

トランザクション ログのバックアップ。

午後 6 時

データベースのバックアップ。

午後 8 時

トランザクション ログのバックアップ。

午後 8 時に作成されたトランザクション ログ バックアップには、午後 4 時から午後 8 時までのトランザクション ログ レコードが含まれています。その間の午後 6 時に、データベースの完全バックアップが作成されています。トランザクション ログ バックアップのシーケンスは、午前 8 時に最初にデータベースの完全バックアップが作成されて以降、午後 8 時のトランザクション ログ バックアップまで継続しています。

これらのトランザクション ログ バックアップを適用する方法の詳細については、「トランザクション ログ バックアップの適用」の例を参照してください。

注意

既定では、バックアップ操作が成功するたびに、SQL Server エラー ログおよびシステム イベント ログにエントリが 1 つ追加されます。ログを頻繁にバックアップすると、これらの成功メッセージがすぐに蓄積され、他のメッセージを探すのが困難になるほどエラー ログが大きくなることがあります。そのような場合、これらのエントリに依存するスクリプトがなければ、トレース フラグ 3226 を使用することによってこれらのログ エントリを除外できます。詳細については、「トレース フラグ (Transact-SQL)」を参照してください。

トランザクション ログ バックアップの作成

ログ バックアップを作成するための基本的な BACKUP 構文を以下に示します。

BACKUP LOG database_name TO <backup_device>

重要な注意事項重要

データベースが破損している場合や、データベースを復元する場合には、「ログ末尾のバックアップ」を参照してください。

トランザクション ログのバックアップを作成するには

バックアップ ジョブのスケジュールを設定するには