oracle 执行跟踪
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle 执行跟踪相关的知识,希望对你有一定的参考价值。
一、sql_trace的介绍
--打开trace文件设置,把sql trace设置为true,就会在udump目录中增加一个trc文件。
alter session set sql_trace=true;
show parameter sql_trace;(select * from v$parameter where name=‘sql_trace‘;)
修改后不生效呢?show parameter sql_trace;其参数始终是FALSE
show parameter sql_trace是从v$parameter中取相应参数,而v$parameter是体现了全部的init.ora的内容。而show user应该是取的当前会话的参数。
sql_trace 是可以在系统或会话级上启用,并且产生很多输出,系统级应该是直接改init了,会话级就用alter session set sql_trace = true来生效。ISSES_MODIFIABLE=false应该是说明在会话一级上,不能启用系统一级的跟踪
如果修改系统的参数,用如下语句:
alter system set sql_trace=true;
此时在查看show parameter sql_trace;可看到sql_trace的value值为TRUE
--对跟踪文件做标记
alter session set tracefile_identifier=‘look_for_me‘; --
--停止该会话的跟踪
alter session set sql_trace=false;
Tkprof工具分析跟踪文件:
1、cd D:\\app\\Rayda001\\diag\\rdbms\\orcl\\orcl\\trace
2、trace>tkprof orcl_j000_10836.trc localhost_recorder3.txt sort=fchela sys=no aggregate=tes waits=yes;
Tkprof是一个用于分析Oracle跟踪文件并且产生一个更加清晰合理的输出结果的可执行工具。如果一个系统的执行效率比较低,一个比较好的方法是通过跟踪用户的会话并且使用Tkprof工具使用排序功能格式化输出,从而找出有问题的SQL语句。
链接为Tkprof相关参数
以上是关于oracle 执行跟踪的主要内容,如果未能解决你的问题,请参考以下文章