一括ログ復旧モデルでのバックアップ [SQL Server]
先日私が嵌ったことです。
SQL Serverの復旧モデルは「完全」「一括ログ」「単純」の3つが選択できます。
それぞれメリットデメリットがありますが、ここでは一括ログを選んだときの話しです。
一括ログではbulk insert等に代表される一括操作時に、トランザクションログに
1つ1つのレコード変更を記録せず、一括操作を行ったことだけを記録します。
そのため、一般的には大量データの操作が行われる一括操作時のトランザクションログの
肥大化を防ぐ効果があります。
その一方で一括ログ操作の記録だけが残るので、STOPATを使った時刻指定での
リカバリができなくなる制限事項があります。
そこで一括ログ操作をしたデータはどのようにしてバックアップ運用に組み込まれるかです。
結論だけ言うと、一括操作で変更されたエクステントはトランザクションログのバックアップに
同梱することでバックアップ取得をします。
つまりは、トランザクションログのバックアップが変更されたエクステントの分だけ多くなります。
変更されたエクステントは内部的にはBCM(一括変更マップ)を使ってトラッキングできます。
よって一括ログ選択時のメリットは一括操作時のトランザクションログ肥大化を抑止でき、
そのトレードオフとしてログバックアップ時にバックアップファイルが大きくなる可能性があります。
http://msdn.microsoft.com/ja-jp/library/ms190692.aspx
http://msdn.microsoft.com/ja-jp/library/ms190950.aspx
スポンサードリンク
SQL Serverの復旧モデルは「完全」「一括ログ」「単純」の3つが選択できます。
それぞれメリットデメリットがありますが、ここでは一括ログを選んだときの話しです。
一括ログではbulk insert等に代表される一括操作時に、トランザクションログに
1つ1つのレコード変更を記録せず、一括操作を行ったことだけを記録します。
そのため、一般的には大量データの操作が行われる一括操作時のトランザクションログの
肥大化を防ぐ効果があります。
その一方で一括ログ操作の記録だけが残るので、STOPATを使った時刻指定での
リカバリができなくなる制限事項があります。
そこで一括ログ操作をしたデータはどのようにしてバックアップ運用に組み込まれるかです。
結論だけ言うと、一括操作で変更されたエクステントはトランザクションログのバックアップに
同梱することでバックアップ取得をします。
つまりは、トランザクションログのバックアップが変更されたエクステントの分だけ多くなります。
変更されたエクステントは内部的にはBCM(一括変更マップ)を使ってトラッキングできます。
よって一括ログ選択時のメリットは一括操作時のトランザクションログ肥大化を抑止でき、
そのトレードオフとしてログバックアップ時にバックアップファイルが大きくなる可能性があります。
http://msdn.microsoft.com/ja-jp/library/ms190692.aspx
http://msdn.microsoft.com/ja-jp/library/ms190950.aspx
スポンサードリンク
2011-10-17 23:46
nice!(0)
コメント(0)
トラックバック(0)
コメント 0