代码改变世界

Oracle 10046跟踪事件使用方法

  abce  阅读(11936)  评论(0编辑  收藏  举报

1.开启10046跟踪事件

1
alter session set events '10046 trace name context forever, level 12';

如果想更容易标识trace文件,在开启事件之前,可以先设置trace的标识

1
alter session set tracefile_identifier='ybb';

 这样完成后,trace文件名称就会加上ybb

2.执行要跟踪的sql语句(对应的trace文件中有SQL的执行情况)

1
select * from dba_users where username='SCOTT';

3.停止10046事件跟踪

1
alter session set events '10046 trace name context off';

 4.定位此次生成的trace文件

1
select distinct(m.sid),p.pid,p.tracefile from v$mystat m,v$session s,v$process p where m.sid=s.sid and s.paddr=p.addr;

5.用tkprof工具格式化文件输出

 

10046事件是SQL_TRACE的扩展,有效的跟踪级别有:
level 0:SQL_TRACE=FASLE
level 1:跟踪sql语句,包括解析、执行、提取、提交和回滚等。
level 4:1级+绑定变量
level 8:4级+等待事件
level 12:4级+8级
其中,level 1相当于打开了sql_trace

 

session级别开启/关闭10046 trace追踪

1
2
alter session set evnets '10046 trace name context forever,level 12';
alter session set events '10046 trace name context forever off';

 

system级别开启/关闭10046 trace追踪

1
2
alter system set events '10046 trace name context forever,level 12';
alter system set events '10046 trace name context forever off';

 

也可以进行全局设置,在参数文件(pfile/spfile)中增加以下:

1
Event=”10046 trace name context forever,level 12”

 

编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示