天天看點

SQL Trace and 10046 event

  1. 跟蹤目前會話

SQL>alter session set sql_trace=true; --開啟SQL跟蹤

SQL>select * from scott.emp  --執行語句

SQL>alter session set sql_trace=flash;  --關閉SQL跟蹤

最後去跟蹤目錄檢視跟蹤檔案 

2.跟蹤特定會話

SQL> select SID,SERIAL# from v$session where sid='38';

       SID    SERIAL#

---------- ----------

        38        369             --檢視需要跟蹤的會話的sid、SERIAL#

SQL> grant execute on dbms_system to scott;    --為執行的跟蹤的使用者授權

Grant succeeded.

SQL> conn scott/scott

Connected.

SQL> exec sys.dbms_system.set_sql_trace_in_session(38,369,true);  --利用dbms包執行SQL跟蹤

PL/SQL procedure successfully completed.

10046 Event

SQL>alter session set event '10046 trace name context forever,level 1|4|6|12'; --對會話進行10046跟蹤