10046事件是Oracle提供的內部事件,是對SQL_TRACE的加強.
有四個級別:
Level 1:等價於啟用標準的SQL_TRACE功能
Level 4:等價於Level 1 + 綁定值(bind values)
Level 8:等價於Level 1 + 等待事件跟蹤
Level 12:等價於Level 1 + Level 4 + Level 8.
對全局設置:
在pfile文件中加入event="10046 trace name context forever,level 12"
對當前session設置:
alter session set events '10046 trace name context forever';
alter session set events '10046 trace name context forever,level 8';
alter session set events '10046 trace name context off';
對其它用戶session設置:
獲得session信息select sid,serial#,username from v$session
where username is not null;
執行跟蹤exec dbms_system.set_ev(sid,serial,10046,12,'username');
結束跟蹤exec dbms_system.set_ev(sid,serial,10046,0,'username');
SQL_TRACE:
設置跟蹤exec dbms_system.set_sql_trace_in_session(sid,serial,true)
停止跟蹤exec dbms_system.set_sql_trace_in_session(sid,serial,false)
溫故知新,預防腦袋生鏽...