10046事件与tkprof命令

0> conn /as sysdba;
1> 激活10046
alter session set events ‘10046 trace name context forever,level 12’
oradebug event 10046 trace name context forever,level 12
2> oradebug setmypid –准备当前session使用oradebug命令
3》要执行的sql
select empno,ename,dname from scott.emp,scott.dept where
emp.deptno=dept.deptno;
4> ORADEBUG TRACEFILE_NAME –查看生成的事件文件路径
5》分析

consistent reads—cr
physical reads–pr
Cardinality–card

    5.1> tkprof 命令格式化查看
      1> cmd
      2> 将原有的ORADEBUG TRACEFILE_NAME路径typrof

C:\Users\Administrator>tkprof c:\app\administrator\diag\rdbms\orcl\orcl\trace\orcl_ora_2788.trc e:\orcl_ora_tkprof_2788;

   6》关闭10046

alter session set events ‘10046 trace name context off’
oradebug event 10046 trace name context off

时间: 2024-08-03 23:04:35

10046事件与tkprof命令的相关文章

Oracle SQL_TRACE和10046事件的优化SQL实例

一数据库版本 LEO1@LEO1>select * from v$version; BANNER -------------------------------------------------------------------------------- Oracle Database11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production PL/SQL Release11.2.0.1.0 - Production CORE  

深入理解Oracle调试事件:10046事件详解

       之前也写过一篇10046的文章:10046简介        今天,Think想和大家一起共同深入去理解一下Oracle的这些调试事件            10046事件是SQL_TRACE的扩展,被戏称为"吃了兴奋剂的SQL_TRACE"       有效的追踪级别:              ① 0级:SQL_TRACE=FASLE       ② 1级:SQL_TRACE=TRUE,这是缺省级别       ③ 4级:1级+绑定变量       ④ 8级:4级+等

使用10046事件 +10704事件对索引在线重建的跟踪

实验场景 1 session  1 创建一个500000000万行的表 2 session  1 创建索引 在 id 3 session  2 update bigtab set object_name='ALIYUN';不提交 4 session  3 查看 session 1 中被阻塞的table share lock 的 request  select a.*    from v$lock a,v$session b    where a.sid = b.sid and b.usernam

[20120915]10046事件与执行计划改变.txt

    使用10046事件来跟踪解决oracle的许多问题,是非常常用的手段,但是实际上可能出现跟踪的sql执行计划与原来不同的情况,自己应该引起注意. 测试如下: 1.测试环境建立: SQL> select * from v$version ; BANNER -------------------------------------------------------------------------------- Oracle Database 11g Enterprise Edition

使用dbms_system来对其他会话进行10046事件12级别的跟踪看不到等待统计信息

数据库版本是10.2.0.1.0和10.2.0.4.0 SQL> select * from v$version where rownum<2; BANNER ---------------------------------------------------------------- Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod SQL> select * from v$version where r

Oracle 事件之10046 跟踪的trace文件相关解释 tkprof

Oracle事件之10046 跟踪的trace文件相关解释 tkprof 优化       sql_trace/10046事件是oracle提供的用于进行sql跟踪的手段,其内容包括sql的解析过程.sql的执行计划.绑定变量的使用.会话发生的等待事件.          在使用sql_trace/10046事件前,有两个参数需要注意:    >                                                                            

启用 Oracle 10046 调试事件

    Oracle 10046是一个Oracle内部事件.最常用的是在Session级别设置sql_trace(alter session set sql_trace=true)即是开启了级别为1的10046调试事件.当设置了10046事件之后,Oracle 将产生一个dump文件.通过得到的dump文件进行进一步分析,可以得到Oracle 内部执行系统解析.调用.等待.绑定变量等详细的trace信息,对于分析系统的性能有着举足轻重的作用.   一.10046事件的相关参数  该事件需要设置一

使用跟踪事件10046

很多时候,对数据库进行性能诊断可以使用SQL跟踪的方法,把一些信息记录在trace文件里以后分析.一般情况下我们可以通过初始化参数SQL_TRACE=TRUE来设置SQL跟踪.     我们也可以通过设置10046事件来进行SQL跟踪,并且可以设置不同的跟踪级别,比使用SQL_TRACE获得更多的信息.     Level 0   停用SQL跟踪,相当于SQL_TRACE=FALSE Level 1   标准SQL跟踪,相当于SQL_TRACE=TRUE Level 4   在level 1的基

SQL_Trace 和 10046 +

1.SQL_TRACE 当SQL语句出现性能问题时,我们可以用SQL_TRACE来跟踪SQL的执行情况,通过跟踪,我们可以了解一条SQL或者PL/SQL包的运行情况,SQL_TRACE命令会将SQL执行的整个过程输出到一个trace文件中,我们可以读这个trace 文件来了解在这个SQL执行过程中Oracle 都做了哪些操作.  可以通过sql命令启动SQL_TRACE,或者在初始化参数里面.  SQL>alter session set sql_trace=true; 或者 SQL> alt