ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 启用sql跟踪

启用sql跟踪

原创 Linux操作系统 作者:Jack_Miller 时间:2012-04-18 09:27:49 0 删除 编辑
1.最简单的方法
alter session set sql_trace=true;

2.10046调试事件

10046事件有5个等级:
0: 禁止调试事件。
1: 给出如下信息:sql语句、解析、执行、统计信息等。
4: 1+绑定变量的额外信息。主要是数据类型、精度以及每次执行时绑定变量的值
8: 1+等待事件的详细信息。主要是等待事件的名字、持续时间,以及一些额外的参数。
12:1+4+8

利用10046事件启用跟踪:
alter session set events '10046 trace name context forever,level n';
alter session set events '10046 trace name off';
也可以在instance级使用10046事件
alter system set events '10046 trace name context forever, level 1';

3.Oracle 10g以后提供了dbms_monitor包来开启和关闭SQL跟踪:
  • 会话级
使用dbms_monitor包的session_trace_enable和session_trace_disable可在会话级别开启和关闭SQL跟踪。
dbms_monitor.session_trace_enable(session_id => 151,serial_num => 62,waits => ture,binds => false);
dbms_monitor.session_trace_disable(session_id => 151,serial_num => 62);
利用session_trace_enable过程开启SQl跟踪的时候,v$session视图的列sql_trace、sql_trace_waits、sql_trace_binds也会设定相应的值。不过只有在被跟踪的会话至少执行了一个SQL语句的时候才会设定。
  • 客户端级
使用dbms_monitor包的client_id_trace_enable和 client_id _trace_disable可在客户端级开启和关闭SQL跟踪。这些过程只有在会话属性客户端标记client_identifier已经设定后才有用。可以使用dbms_session.set_identifier(client_id=>'hello.com.cn');设定客户端标记。
conn scott/tiger
exec dbms_session.set_identifier(client_id=>'hello.com.cn');
select sid,serial#,client_identifier from v$session;
       SID    SERIAL# CLIENT_IDENTIFIER
---------- ---------- ------------------------------
       151         62 hello.com.cn

conn / as sysdba
exec dbms_monitor.client_id_trace_enable(client_id=>'hello.com.cn',waits=>true,binds=>false);
exec dbms_monitor.client_id_trace_disable(client_id=>'hello.com.cn');
  • 数据库级
要为所有连接到数据库的会话打开或关闭SQL跟踪,dbms_monitor包提供了database_trace_enable和database_trace_disable过程。
dbms_monitor.database_trace_enable(waits=>ture,binds=>trus,instance_name=>null);
dbms_monitor.database_trace_disable(instance_name=null);
在RAC上,通过指定instance_name参数,能够对指定的示例进行跟踪。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25791987/viewspace-721493/,如需转载,请注明出处,否则将追究法律责任。

上一篇: 还有好多要学的
下一篇: Oracle字符集测试
请登录后发表评论 登录
全部评论

注册时间:2011-12-09

  • 博文量
    25
  • 访问量
    68411