アーカイブログの問題点
増え続けるアーカイブログ
Oracleをアーカイブログ運用にすると、復旧する際には役立ちますが、常にログが増え続けるため、容量を圧迫してしまう問題があります。
Oracleのアーカイブログとは
Oracleのアーカイブログについて。 この記事の内容はコチラです 「アーカイブログ」とは? 「アーカイブログ」はなぜ必要か? 今回は、Oracleのアーカイブログについて紹介します! OracleのREDOログファイル Oracleには通...
Oracle アーカイブログを設定する(確認方法も)
Oracleのアーカイブログの設定ついて。 この記事の内容はコチラです アーカイブログを設定する アーカイブログモードかどうかを確認する 今回は、Oracleのアーカイブログの設定方法について紹介します! アーカイブログモードに設定するSQ...
ここでは、増え続けるアーカイブログを自動で削除するバッチを作成してみます。
直接アーカイブログファイルをエクスプローラーから開いて手動で削除することもできますが、システム的ではないのでおすすめできません。アーカイブログを自動で削除するように設定しておけば、手動で削除するよりかなり楽になります。
RMANでアーカイブログを削除する
Oracleのアーカイブログを削除するには、RMAN(Recovery Manager)を使います。
RMANを使うとデータベースの整合性をとって削除をしてくれます。
アーカイブログを自動で削除するバッチを作成する
RMANのスクリプト作成
まずはアーカイブログを削除するRMANのスクリプトを作成します。このファイルを「del_arclog.rcv」として保存します。
「del_arclog.rcv」
run{ # 1日以前を削除 delete noprompt archivelog until time 'sysdate-1'; # OSから削除された場合、oracle側も削除する crosscheck archivelog all; delete expired archivelog all; }
ここでは「sysdate-1」として1日分のアーカイブログを残して残りは削除します。日数は適宜変更してください。
RMANの「crosscheck」コマンドですでに削除済みのアーカイブログをチェックし、「delete」で完全に削除します。
参照:RMANコマンドの概要
自動削除バッチを作成する
次に、先ほど作成したRMANスクリプト「del_arclog.rcv」を実行するバッチファイルを作成します。ファイル名は「del_arclog.bat」とします。
「del_arclog.bat」
REM アーカイブログを削除する rman target / @del_arclog.rcv log=del_arclog.log append nocatalog
RMANでスクリプトを実行するバッチを作成できました。
このバッチファイル「del_arclog.bat」をWindowsのタスクスケジュールに追加してやれば、日々Oracleのアーカイブログファイルを自動で削除することができます。アーカイブログを手動で削除するのはとても手間なので、ぜひ自動削除にしてみてください。
以上、Oracleのアーカイブログファイルを自動で削除する方法でした。
コメント