Chinaunix首页 | 论坛 | 博客
  • 博客访问: 103233105
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: Oracle

2008-05-23 22:19:35

   来源:

1:确认相关参数设置。
跟踪自己的代码。如果能访问程序的源代码,则打开其SQL跟踪就非常容易。首先必须确保会话的TIMED_STATISTICS和MAX_DUMP_ FILE_SIZE参数设置正确: 

alter session 
set timed_statistics=true
alter session 
set max_dump_file_size=unlimited

如果没有设置TIMED_STATISTICS=TRUE,则数据库内核将把0值而不是真正的持续时间发送到跟踪文件中。如果对MAX_DUMP_ FILE_SIZE严加限制,则会在跟踪文件中生成下面这样的消息,而不是你想要的时间数据:
可以使用 show parameters timed_statistics;来查看他的值。
2:如果是跟踪自己,使用
   alter session set sql_trace = true;
   如果是跟踪别的用户,则先查询v$session视图,获取进程信息
   select sid,serial#,username from v$session;
       SID    SERIAL# USERNAME
---------- ---------- ------------------------------
         1          1
         2          1
         3          1
         4          1
         5          1
         6          1
         7        284 IFLOW
        11        214 IFLOW
        12        164 SYS
        16       1042 IFLOW
     10 rows selected.
     然后使用exec dbms_system.set_sql_trace_in_session(7,284,true);进行跟踪.
3: 停止跟踪,切记运行一段时间后一定要停止跟踪,对应2 分别采用:
   alter session set sql_trace= false;
   或则
   exec dbms_system.set_sql_trace_in_session(7,284,false);
   
4:格式化trc文件
    生成的文件放在udump目录下,可以使用tkprof来查看
    C:>tkprof D:oracle9adminnbxtdbudumpnbxtdb_ora_1912.trc 13.txt         sys=no explain=test/test
   然后就可查看文本文件了进行了。

阅读(288) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~