首先介绍2个新名词
Automatic Diagnostic Repository (ADR)
一个存放数据库诊断日志、跟踪文件的目录,称作ADRbase,对应初始化参数DIAGNOSTIC_DEST,如果设置了ORACLE_BASE环境变量,DIAGNOSTIC_DEST等于ORACLE_BASE,如果没有设置ORACLE_BASE,则等与ORACLE_HOME/log。
SQL> show parameter DIAGNOSTIC
NAME TYPE VALUE
------------------------------------ -----------------------------------------
diagnostic_dest string /oracle/oracle
二.aelrt xml file
在oracle 11g中,alert文件的信息是以xml的文件格式存在的,另外提供了普通文本格式的alert文件。
这两份log文件的位置分别是V$DIAG_INFO中的Diag Alert 和Diag Trace对应的目录。
1.通过查询v$diag_info视图获得ADR相关的信息
代码:
sys@ora11g>select * from v$diag_info;
INST_ID NAME VALUE
------- --------------------------------------------------------------------
1 Diag Enabled TRUE
1 ADR Base/oracle/u01/app/oracle
1 ADR Home /oracle/u01/app/oracle/diag/rdbms/ora11g/ora11g
1 Diag Trace/oracle/u01/app/oracle/diag/rdbms/ora11g/ora11g/trace
1 Diag Alert/oracle/u01/app/oracle/diag/rdbms/ora11g/ora11g/alert
1 Diag Incident/oracle/u01/app/oracle/diag/rdbms/ora11g/ora11g/incident
1 Diag Cdump/oracle/u01/app/oracle/diag/rdbms/ora11g/ora11g/cdump
1 Health Monitor/oracle/u01/app/oracle/diag/rdbms/ora11g/ora11g/hm
1 Default Trace File/oracle/u01/app/oracle/diag/rdbms/ora11g/ora11g/trace/ora11g_ora_3968.trc
1 Active Problem Count 0
1 Active Incident Count 0
11 rows selected.
2.其中Diag Trace对应的目录为文本格式的警告日志,及我们经常习惯使用的日志
代码:
ora11g@RHEL53/oracle/u01/app/oracle/diag/rdbms/ora11g/ora11g/trace$ls -lalert_ora11g.log
-rw-r----- 1 oracle oinstall 72513 Feb 27 14:29alert_ora11g.log
3.其中Diag Alert对应的目录为XML格式的警告日志
代码:
ora11g@RHEL53/oracle/u01/app/oracle/diag/rdbms/ora11g/ora11g/alert$ls -llog.xml
-rw-r----- 1 oracle oinstall 327254 Feb 27 14:29 log.xml
4.我习惯将查看警告日志定义为同名alert在操作系统上直接查看
代码:
ora11g@RHEL53 /home/oracle$alias alert
alias alert='tail -200f$ORACLE_BASE/diag/rdbms/$ORACLE_SID/$ORACLE_SID/trace/alert_$ORACLE_SID.log'
5.使用同名进行查看
代码:
ora11g@RHEL53 /home/oracle$alert
|