`
cancer_sun
  • 浏览: 32167 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

oracle 10046跟踪的使用

 
阅读更多

在打开10046事件的SQL Trace之前,要先设置好下面几个参数。

timed_statistics
这个参数决定了是否收集与时间相关的统计信息,如果这个参数为FALSE的话,那么SQL Trace的结果基本没有多大的用处,默认情况下这个参数设置为TRUE。

max_dump_file_size
dump文件的大小,也就是决定是否限制SQL Trace文件的大小,在一个很忙的系统上面做SQL Trace的话可能会生成很多的信息,因此最好在会话级别将这个参数设置成unlimited。

tracefile_identifier
给Trace文件设置识别字符串,这是个非常有用的参数,设置一个易读的字串能更快的找到Trace文件。

要在当前会话修改上述参数很简单,只要使用下面的命令即可:

ALTER SESSION SET timed_statistics=true;
ALTER SESSION SET max_dump_file_size=unlimited;
ALTER SESSION SET tracefile_identifier='cancer_trc;

开启当前会话的10046 Trace

ALTER SESSION SET EVENTS '10046 trace name context forever, level 12';

关闭Trace,任何级别

ALTER SESSION SET EVENTS '10046 trace name context off';

查询当前会话产生的trc路径

select c.value || '/' || d.instance_name || '_ora_' || a.spid || '.trc' trace 
from v$process a, v$session b, v$parameter c, v$instance d
where a.ADDR = b.PADDR
and b.SID = sys_context('userenv','sid')
and c.NAME = 'user_dump_dest' ;

使用tkprof将trc文件转换成可读文件
先定位到tkprof所在路径,一般在ORACLE_HOME/BIN下
执行:
tkprof trc文件路径 生成文件路径,例如:

tkprof  E:\app\Administrator\diag\rdbms\orcl\orcl\trace\orcl_ora_6344_my_trace_session.trc c:\a.txt
<script type="text/javascript"> $(function () { $('pre.prettyprint code').each(function () { var lines = $(this).text().split('\n').length; var $numbering = $('<ul/>').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i <= lines; i++) { $numbering.append($('<li/>').text(i)); }; $numbering.fadeIn(1700); }); }); </script>

版权声明:本文为博主原创文章,未经博主允许不得转载。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics