user SQL statements in session. internal SQL statements in session. SQL statements in session. statement EXPLAINed in this session. ******************************************************************************** Trace file: D:\ORACLE\PRODUCT\10.2.0\DB_1\RDBMS\TRACE/wgods_ora_3940.trc Trace file compatibility: 10.01.00 Sort options: default session in tracefile. user SQL statements in trace file. internal SQL statements in trace file. SQL statements in trace file. unique SQL statements in trace file. SQL statements EXPLAINed using schema: ETL.prof$plan_table Default table was used. Table was created. Table was dropped. lines in trace file. elapsed seconds in trace file.
4.3跟踪其它用户的进程,在很多时候我们需要跟踪其它用户的进程,而不是当前用户,可以通过ORACLE提供的系统包 DBMS_SYSTEM.SET_SQL_TRACE_IN_SESSION来完成。 例如: 代码如下: SELECT SID, SERIAL#, USERNAME FROM V$SESSION WHERE USERNAME = 'ETL' EXEC DBMS_SYSTEM.SET_SQL_TRACE_IN_SESSION(61,76,TRUE); EXEC DBMS_SYSTEM.SET_SQL_TRACE_IN_SESSION(61,76,FALSE);
5 利用10046事件 代码如下: ALTER SESSION SET TRACEFILE_IDENTIFIER = 10046; ALTER SESSION SET EVENTS='10046 trace name context forever, level 8'; SELECT * FROM SCOTT.EMP; ALTER SESSION SET EVENTS ='10046 trace name context off'; 然后你可以用脚本查看追踪文件的位置 SELECT T.VALUE || '/' || LOWER(RTRIM(I.INSTANCE, CHR(0))) || '_ora_' || P.SPID || '.trc' TRACE_FILE_NAME FROM ( SELECT P.SPID FROM V$MYSTAT M, V$SESSION S, V$PROCESS P WHERE M.STATISTIC# =1 AND S.SID = M.SID AND P.ADDR = S.PADDR ) P, ( SELECT T.INSTANCE FROM V$THREAD T, V$PARAMETER V WHERE V.NAME ='thread' AND (V.VALUE = 0 OR T.THREAD# = TO_NUMBER(V.VALUE)) ) I, (SELECT VALUE FROM V$PARAMETER WHERE NAME='user_dump_dest') T 查询结果为wgods_ora_28279.trc文件, 但是去相应目录却没有找到对应的追踪文件,而是如下trace文件: wgods_ora_28279_10046.trc6 利用10053事件 上一页 [1] [2] [3] [4] [5] [6] [7] [8] 下一页
|