[Oracle] アラート・ログはどこへ消えた? | Archive Redo Blog

Archive Redo Blog

DBエンジニアのあれこれ備忘録

アラート・ログは 10g までは初期化パラメータ BACKGROUND_DUMP_DEST で示される場所に出力されていました。

BACKGROUND_DUMP_DEST のデフォルトの設定は "<ORACLE_BASE>/admin/<DB_NAME>/bdump/" ですので、例えば ORACLE_BASE 環境変数が "/u01/app/oracle" でかつデータベース名、SID が "orcl" の場合、アラート・ログの出力先は、

/u01/app/oracle/admin/orcl/bdump/

となります。


しかし、11g からはアラート・ログは以下のように初期化パラメータ DIAGNOSTIC_DEST で示される場所(※1)に出力されるよう変更されています。

<DIAGNOSTIC_DEST>/diag/rdbms/<DB_NAME>/<SID>/trace/

DIAGNOSTIC_DEST のデフォルトの設定は ORACLE_BASE 環境変数(※2)ですので、例えば ORACLE_BASE 環境変数が "/u01/app/oracle" でかつデータベース名、SID が "orcl" の場合、アラート・ログの出力先は、

u01/app/oracle/diag/rdbms/orcl/orcl/trace/

となります。

DIAGNOSTIC_DEST に設定されたディレクトリ以下、diag/rdbms/...とさらに深いディレクトリ構造になっているのは、アラート・ログが自動診断リポジトリ(ADR)の構造にしたがって出力されるよう変更されているからです。

※1:DIAGNOSTIC_DEST が設定されていない場合は、ORACLE_BASE。ORACLE_BASE も設定されていない場合は <ORACLE_HOME>/log。
※2:ORACLE_BASE が設定されていない場合は、<ORACLE_HOME>/log。


また、この変更はコア・ダンプ、バックグラウンド・プロセスのトレース、ユーザー・トレースについても同様で、10g まではそれぞれ初期化パラメータ CORE_DUMP_DEST、BACKGROUND_DUMP_DEST、USER_DUMP_DESTで示される場所に出力されていましたが、11g からはこれらの初期化パラメータがすべて DIAGNOSTIC_DEST に統合され、それにしたがって出力先も以下のように変更されています。

コア・ダンプ
<DIAGNOSTIC_DEST>/diag/rdbms/<DB_NAME>/<SID>/cdump/
バックグラウンド・プロセスのトレース
<DIAGNOSTIC_DEST>/diag/rdbms/<DB_NAME>/<SID>/trace/
ユーザー・トレース
<DIAGNOSTIC_DEST>/diag/rdbms/<DB_NAME>/<SID>/trace/

これらのログやトレースを参照する際、特にこれらのログやトレースを操作する運用管理系のプログラムやスクリプトを 10g 以前のバージョンから 11g に移行する際には注意が必要です。