Oracle所有诊断事件列表events是怎样的,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
通过如下的脚本可以获取所有的诊断事件列表:
在UNIX系统下message文件在底下目录$ORACLE_HOME/rdbms/mesg/oraus.msg
在NT系统下message文件在底下目录$ORACLE_HOME/rdbms/mesg/oraus.msg
oraus.msg文件属于文本文件,可以直接打开查看。
诊断事件可以像普通的ORA错误一样采用oerr命令来查询,如下所示:event=”10248 trace name context forever, level 10″
event=”10249 trace name context forever, level 10″另一种方法是在会话过程中使用alter session set events命令,只对当前会话有影响。设置格式如下:alter session|system set events ‘[eventnumber|immediate] trace name eventname [forever] [, level levelnumber] : …….’通过:符号,可以连续设置多个事件,也可以通过连续使用alter session set events 来设置多个事件。SQL> show parameter event
———————————— ———– ——————————
SQL> alter system set event=’10046 trace name context forever,level 12′;
*
ORA-02095: specified initialization parameter cannot be modified
System altered.
Database closed.
ORACLE instance shut down.
ORA-32004: obsolete and/or deprecated parameter(s) specified
Total System Global Area 1157627904 bytes
Variable Size 402654536 bytes
Redo Buffers 31457280 bytes
Database opened.
NAME TYPE VALUE
event string 10046 trace name context forev
SQL>
System altered.
System altered.
SQL> ALTER system SET event=’1461 trace name errorstack level 3′;
*
ORA-02095: specified initialization parameter cannot be modified
SQL> ALTER system SET event=’1461 trace name errorstack level 3′ scope=spfile;
验证是否已成功更改:
File created.
[oracle@rac01 ~]$ grep event 1.ora
这种方法的话,需要重启DB。下面Rollback这个参数更改
System altered.
File created.
[oracle@rac01 ~]$ grep event 2.ora
2. alter system set events:此方法对memory生效,无法对spfile生效
SQL> !
[oracle@rac01 ~]$ tail -n1 /oracle/admin/strm1/bdump/alert_strm1.log
这个参数更改没有反应到spfile中
File created.
[oracle@rac01 ~]$ grep event 3.ora
其实这里的1461是个BUG 6085625,Metalink上可以参照NOTE: 461911.1
另外需要注意的是,RAC环境中用方法2动态设置event的话需要在所有instance免费主机域名设免费主机域名置。不过理解了上面的区别的话这个也就很容易明白了。四. 示例
4.1查看当前trc 文件
select
u_dump.value || ‘/’ ||
db_name.value || ‘_ora_’ ||
v$process.spid ||
nvl2(v$process.traceid, ‘_’ || v$process.traceid, null )
|| ‘.trc’ “Trace File”
from
v$parameter u_dump
cross join v$parameter db_name
cross join v$process
join v$session
on v$process.addr = v$session.paddr
where
u_dump.name = ‘user_dump_dest’ and
db_name.name = ‘db_name’ and
v$session.audsid=sys_context(‘userenv’,’sessionid’);
eg:
/oracle/product/10.2.0/admin/dw/udumpdw_ora_389530.trc
4.2执行event
alter session set events ‘10046 trace name context forever, level 1’;
select count(1) from all_tables;
alter session set events ‘10046 trace name context off’ ;
4.3 在查看dw_ora_389530.trc $dw_ora_389530.trc
以下是所有的诊断事件列表:
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注云技术行业资讯频道,感谢您对云技术的支持。
本篇内容介绍了“MySQL中InnoDB锁机制分析”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! 一 前言本文介绍另外两种锁 Insert Intention …