1.開啟10046跟蹤事件
alter session set events '10046 trace name context forever, level 12';
如果想更容易標識trace檔案,在開啟事件之前,可以先設定trace的標識
alter session set tracefile_identifier='ybb';
這樣完成後,trace檔名稱就會加上ybb
2.執行要跟蹤的sql語句(對應的trace檔案中有sql的執**況)
select * from dba_users where username='scott';
3.停止10046事件跟蹤
alter session set events '10046 trace name context off';
4.定位此次生成的trace檔案
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追蹤
alter session set evnets '10046 trace name context forever,level 12';
alter session set events '10046 trace name context forever off';
system級別開啟/關閉10046 trace追蹤
alter system set events '10046 trace name context forever,level 12';
alter system set events '10046 trace name context forever off';
也可以進行全域性設定,在引數檔案(pfile/spfile)中增加以下:
event=」10046 trace name context forever,level 12」
啟用 Oracle 10046 除錯事件
oracle 10046是乙個oracle內部事件。最常用的是在session級別設定sql trace alter session set sql trace true 即是開啟了級別為1 的10046除錯事件。當設定了10046事件之後,oracle 將產生乙個dump檔案。通過得到的dump檔...
啟用 Oracle 10046 除錯事件
oracle 10046是乙個oracle內部事件。最常用的是在session級別設定sql trace alter session set sql trace true 即是開啟了級別為1 的10046除錯事件。當設定了10046事件之後,oracle 將產生乙個dump檔案。通過得到的dump檔...
10046事件跟蹤(10053)
前提 1 必須確保timed statistics為true,這個引數可以在會話級上進行修改。2 為了確保trace輸出能夠完整進行,還要調整此會話對trace檔案大小的限制,一般將此限制取消,即將max dump file size設定為unlimited,或者設定為乙個很大的闕值。1 跟蹤本會話...