oracle 跟踪会话

联系:手机/微信(+86 17813235971) QQ(107644445)QQ咨询惜分飞

标题:oracle 跟踪会话

作者:惜分飞©版权所有[未经本人同意,不得以任何形式转载,否则有进一步追究法律责任的权利.]

一、跟踪自己的会话或者是别人的会话
1、跟踪自己的会话很简单
Alter session set sql_trace true|false;
或者
exec dbms_session.set_sql_trace(true/false);

2、如果跟踪别人的会话,需要调用一个包
exec dbms_system.set_sql_trace_in_session(sid,serial#,true|false);

二、整个数据库系统跟踪
1、开启会话跟踪
alter system set events
’10046 trace name context forever,level 1′;

2、关闭会话跟踪
alter system set events
’10046 trace name context off’;

3、跟踪会话级别
level 1:跟踪SQL语句,等于sql_trace=true
level 4:包括变量的详细信息
level 8:包括等待事件
level 12:包括绑定变量与等待事件

4、说明:在11g中已经不推荐使用
alter system set sql_trace=true;
alter system set sql_trace=false;

三、查看跟踪文件
1、查看跟踪文件位置(当前会话)

select d.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') d;

2、tkprof格式化跟踪文件
tkprof trace_file_name out_file

此条目发表在 Oracle性能优化 分类目录。将固定链接加入收藏夹。

oracle 跟踪会话》有 4 条评论

  1. 惜分飞 说:

    指定跟踪会话标志

    alter session set tracefile_identifier='xifenfei';
    
  2. 惜分飞 说:

    跟踪会话方法

    --  For 8i and 9i:
    alter session set sql_trace=true;
    
    --  For 10g (sql_trace being deprecated):
    execute dbms_monitor.session_trace_enable
    
    --  For 8i and 9i:
    alter session set sql_trace=false;
    
    --  For 10g (sql_trace being deprecated):
    execute dbms_monitor.session_trace_disable
    
  3. 惜分飞 说:

    oradebug操作

    --也可以设置当前会话SETMYPID
    SQL> oradebug SETORAPID 15
    Unix process pid: 14851, image: oracle@xifenfei (TNS V1-V3)
    
    SQL> oradebug EVENT 10046 TRACE NAME CONTEXT FOREVER, LEVEL 4
    Statement processed.
    
    --(其他)会话操作
    
    SQL> oradebug EVENT 10046 trace name context off
    Statement processed.
    
    SQL> oradebug TRACEFILE_NAME
    /u01/oracle/admin/xifenfei/udump/xff_ora_14851.trc
    
  4. 惜 分飞 说:
    1、开启会话跟踪
    alter session set events
    '10046 trace name context forever,level 4';
    2、关闭会话跟踪
    alter session set events
    '10046 trace name context off';