Question Description:
在学习oracle startup时,需要找到alert报警日志检查启动情况,可是 $ORACLE_BASE/admin/$ORACLE_SID/bdump/alert_orcl.log之后显示没有这个文件或者目录
Solution:我装的oracle是11g的报警日志 路径: $ORACLE_BASE/diag/rdbms/orcl/orcl/trace/alert_orcl.log ,上面的文件位置是10g的报警日志位置
Explain:
Oracle10g之前,报警日志放在bdump文件夹。 从 Oracle 11g 开始,Oracle 数据库引入了ADR(一个存放数据库诊断
日志、跟踪文件的目录),它对应的初始化参数为DIAGNOSTIC_DEST新的初始化参数 DIAGNOSTIC_DEST 控制 ADR BASE 的位置
以XML与传统的文本两种格式提供 Alert 日志。
可以使用如下语句查看diagnostic_dest位置:
SQL> show parameter diagnostic_dest ----------查看初始化参数diagnostic_dest
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
diagnostic_dest string /u01/app/oracle
如果设置了$ORACLE_BASE,DIAGNOSTIC_DEST等于$ORACLE_BASE
如果没有设置$ORACLE_BASE,那么DIAGNOSTIC_DEST在$ORACLE_HOME/log目录下
报警日志由两种格式存储:
查看XML文件的目录:
SQL> select value from v$diag_info where name='Diag Alert';
VALUE
--------------------------------------------------------------------------------
/u01/app/oracle/diag/rdbms/orcl/orcl/alert
路径:$ORACLE_BASE/diag/rdbms/orcl/orcl/alert/log.xml
查看文本文件的目录:
SQL> select value from v$diag_info where name='Diag Trace';
VALUE
--------------------------------------------------------------------------------
/u01/app/oracle/diag/rdbms/orcl/orcl/trace
路径: $ORACLE_BASE/diag/rdbms/orcl/orcl/trace/alert_orcl.log
]
10g和11g都可以通过background_dump_dest查看报警文件的位置,这样就直接查看文本文件位置
SQL> show parameter background_dump_dest;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
background_dump_dest string /u01/app/oracle/diag/rdbms/orc
l/orcl/trace