Welcome 微信登录

首页 / 数据库 / MySQL / Oracle的10046事件跟踪简述

通常情况下,10046事件是不被推荐的,因为如果你面前需要处理的这个实例的性能是比较差的话,10046事件追踪,可能会让你的实例性能更加糟糕。通常情况下我们按照实际的业务情况获取一段时间的AWR报告就可以基本解决一些常见的问题,比如哪些SQL占用了我们更多的资源,比较吃紧的资源争夺,内存问题,出现了锁资源等等。但是当AWR没有办法定位问题的时候,我们就可以启动10046追踪,下面是对10046追踪的一个最小化例子,我们可以在本机执行一次该10046追踪,下面的红色字体是敲入的命令:00:17:06 ChenZw> alter session set tracefile_identifier="10046";会话已更改。00:17:09 ChenZw> alter session set events "10046 trace name context forever, level 12";会话已更改。00:17:34 ChenZw> select count(1) from all_objects;  COUNT(1)
----------
    76791已选择 1 行。00:17:54 ChenZw> alter session set events "10046 trace name context off";会话已更改。可以看到上面的执行,第一句是设置追踪标识符,第二句是开启追踪,第三句是执行的句子,然后最后一句是关闭10046追踪。执行完上面的语句之后,当退出当前会话的时候,Oracle就会将追踪的结果写入到trace文件目录中,在我本机是如下地址:d:oraclediag dbmsorclorcl raceorcl_ora_8732_10046.trc这里,我们就可以使用Oracle提供的tkprof来格式化打开追踪文件,进行分析,如下:C:>tkprof d:oraclediag dbmsorclorcl raceorcl_ora_8732_10046.trc D:10046.txt sys=no sort=prsela,exeela,fchelaTKPROF: Release 11.1.0.6.0 - Production on 星期三 7月 10 00:23:18 2013Copyright (c) 1982, 2007, Oracle.  All rights reserved.执行完上面的命令之后,我们就可以在D:目录下面找到10046.txt,通过分析10046.txt我们就可以对刚刚的执行语句进行优化了,10046扩展追踪,非常适合于对那些把很多业务逻辑写入到存储过程中的软件调优。更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12MongoDB 入门指南、示例了解Oracle物理体系必须知道的几个命令相关资讯      Oracle 10046  Oracle 10046事件 
  • Oracle 10046事件  (03/05/2015 18:56:15)
  • Oracle 10046跟踪事件操作步骤  (10/07/2013 13:37:07)
  • Oracle SQL Trace 和 10046 事件  (06/01/2013 08:31:41)
  • 从10046 Trace RAW File看Cursor  (05/07/2014 06:13:17)
  • Oracle 11g新SQL Trace 10046方法  (09/08/2013 20:17:06)
本文评论 查看全部评论 (0)
表情: 姓名: 字数