SQL Server トランザクションログ肥大化時の復旧モデル・ログバックアップ・縮小リスク確認
ログ再利用待機と復旧目標を確認し、ログバックアップや長時間トランザクションを是正します。縮小は定常運用ではなく例外作業です。
先に結論
ログ再利用待機と復旧目標を確認し、ログバックアップや長時間トランザクションを是正します。このケースでは、まず「復旧モデル」と「log reuse wait desc」を確認し、その後「トランザクションログのバックアップチェーン」を基準に修正の要否を判断します。
最初に切り分ける範囲
このサーバー/データベースの事象では、まず「リカバリモデル」と「log reuse wait desc」で障害境界を決め、その後「トランザクションログのバックアップチェーン」へ進みます。本番設定を変更する前に、現状、発生時刻、正常な比較対象を記録します。
依存関係に沿った確認順序
| 確認項目 | 確認する理由 | 推奨アクション |
|---|---|---|
| 01 · 復旧モデル | 復旧モデル を、設定値だけで判断せず、ログ、カウンター、状態情報で実経路上から確認します。 | 復旧モデル の現在値、証跡元、時刻を記録します。変更が必要な場合は一度に一条件だけ変更し、切り戻し用に元の設定を保持します。 |
| 02 · log reuse wait desc | log reuse wait desc を、設定値だけで判断せず、ログ、カウンター、状態情報で実経路上から確認します。 | log reuse wait desc を読み取り中心で確認し結果を保存します。基準との差がある場合は、障害時刻と直近変更との関係を確認してから修正します。 |
| 03 · トランザクションログのバックアップチェーン | トランザクションログのバックアップチェーン を、設定値だけで判断せず、ログ、カウンター、状態情報で実経路上から確認します。 | トランザクションログのバックアップチェーン を正常系、ログ時系列、実際の業務経路と比較し、原因であることを確認してから本番設定を変更します。 |
| 04 · 長時間トランザクション、レプリケーション、AG などの待機 | 長時間トランザクション、レプリケーション、AG などの待機 の現在値、関連ログ、直近の変更を確認し、障害発生時刻と突き合わせて変更要否を判断します。 | 長時間トランザクション、レプリケーション、AG などの待機 の現在値、証跡元、時刻を記録します。変更が必要な場合は一度に一条件だけ変更し、切り戻し用に元の設定を保持します。 |
| 05 · ディスク容量 | ディスク容量 の現在値、関連ログ、直近の変更を確認し、障害発生時刻と突き合わせて変更要否を判断します。 | ディスク容量 を読み取り中心で確認し結果を保存します。基準との差がある場合は、障害時刻と直近変更との関係を確認してから修正します。 |
| 06 · ログ縮小を一時対応に限定する判断 | ログ縮小を一時対応に限定する判断 の現在値、関連ログ、直近の変更を確認し、障害発生時刻と突き合わせて変更要否を判断します。 | ログ縮小を一時対応に限定する判断 を正常系、ログ時系列、実際の業務経路と比較し、原因であることを確認してから本番設定を変更します。 |
読み取り確認の例
SELECT name, recovery_model_desc, log_reuse_wait_desc FROM sys.databases;根拠を確認してから変更する
- まず読み取り中心で証跡を取得し、設定変更前に「復旧モデル」と「log reuse wait desc」を確認します。
- 最初の確認が正常なら「トランザクションログのバックアップチェーン」と「長時間トランザクション、レプリケーション、AG などの待機」へ進み、障害時刻と結び付く証跡を残します。
- 証跡が症状を説明できる場合に限って設定を変更します。「ディスク容量」を変更する前に元の値と切り戻し条件を定義します。
- 「ログ縮小を一時対応に限定する判断」は限定範囲で検証してから、本番ユーザーまたは本番トラフィックへ展開します。
復旧確認と切り戻し
- ユーザーまたはアプリケーションの一連の業務動作を確認し、「復旧モデル」単独の状態だけで完了としません。
- 変更後に「ディスク容量」と「ログ縮小を一時対応に限定する判断」を再確認し、新たな迂回、権限拡大、二次障害がないことを確認します。
- 「復旧モデル」から「ログ縮小を一時対応に限定する判断」までの証跡、変更前後の設定、業務確認結果、切り戻し点を保存します。
よくある誤判断
- 「リカバリモデル」と「log reuse wait desc」を同時に変更し、どちらが原因だったか追跡できなくすること。
- 「トランザクションログのバックアップチェーン」が正常というだけで、「長時間トランザクション、レプリケーション、AG などの待機」を含む業務経路全体も正常と判断すること。
- 「ディスク容量」または「縮小処理が一時対応に過ぎないか」の一時例外を、責任者・期限・切り戻し記録なしで本番に残すこと。
関連する確認事項
「SQL Server トランザクションログ肥大化時の復旧モデル・ログバックアップ・縮小リスク確認」はどこから確認すべきですか?
まず「復旧モデル」と「log reuse wait desc」を確認します。本番状態を変えずに最初の切り分け境界を作れます。
最初の層が正常な場合、次に何を確認しますか?
次に「トランザクションログのバックアップチェーン」と「長時間トランザクション、レプリケーション、AG などの待機」を確認し、障害時刻および実際のユーザー/アプリ経路と突き合わせます。
変更後に何を残すべきですか?
「ディスク容量」と「ログ縮小を一時対応に限定する判断」の証跡に加え、元の設定、検証結果、観察記録、切り戻し点を保存します。
