Db2 リカバリー履歴ファイルとアーカイブログ削除

3,879 views

Db2 を本番稼働させる場合、循環ログ方式ではなくアーカイブログ方式で運用する場合が多いです。オンラインバックアップで日次バックアップを取っている、もしくはリストア後に障害直前までロールフォワードをかける必要がるなど様々な要件があると思います。

リカバリー履歴ファイル

そこで運用上必要になってくるのが、リカバリー履歴ファイルとアーカイブログの定期的な削除です。
リカバリー履歴ファイルはデータベース 構成パラメーターの「REC_HIS_RETENTN」というパラメーターにしたがって削除(整理)されていきます。Db2 11.5 のデフォルト値は 90(日)になっています、Db2 11.1 までは 366(日)がデフォルトだったので注意です。

アーカイブログ削除

日次のジョブなどで履歴ファイルを整理する場合「PRUNE HISTORY」コマンドで削除する事が多いと思います。また、同時にアーカイブログの削除を行う場合は「PRUNE HISTORY」に AND DELETE オプションをつけて実行しているのではないでしょうか。

ここでアーカイブログの削除と関連してくるのですが、以下のようにする事です。
REC_HIS_RETENTN > PRUNE HISTORYの日付
RRUNE HISTORY コマンドはリカバリー履歴ファイル内を検索し、該当するバックアップ履歴が存在する場合にバックアップ履歴と同時にアーカイブログも削除を行う動作になります。
ですので、REC_HIS_RETENTN の範囲内で自動的に削除されている日付よりも前の日付をPRUNE時に指定してもアーカイブログの削除は行ってくれません。

残ってしまったアーカイブログは手動で削除する必要があり、以下のコマンドで削除可能です。例として3日以前のログを削除する場合のコマンドになります。<FILE_NAME> は “*${dbname}*” などに置き換えて下さい。

# find <BACKUP_DIR> -name <FILE_NAME> -mtime +3 -delete

Db2 11.1 から Db2 11.5 へ移行などする場合、デフォルト値が変わってますので、日次ジョブ内で設定されているログ削除日次などを検討しなおす必要がありますね。
ありがとうございました!!

関連記事

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA