ITPub博客

首页 > Linux操作系统 > Linux操作系统 > Oracle SQL TRACE 的使用

Oracle SQL TRACE 的使用

原创 Linux操作系统 作者:无名雪狼 时间:2011-04-24 12:35:34 0 删除 编辑
1、SQL TRACE 的启动与关闭:
            在使用SQL TRACE之前,需要先查看oracle的初始参数是否设置好,有三个参数需要正确设置,分别是timed_statistics=true、user_dump_dest=跟踪文件存放位置、max_dump_file_size=unlimited、,这个值可以自己设定,其中timed_statistics参数用于是否可以在系统中执行跟踪,为true是表示可以执行跟踪。
           其实在oracle10gR2中这几个参数都是已经设置好了的不用多做设置。 确定好这几个参数之后,就可以开始跟踪执行了。你可以在sys用户下执行跟踪,或者其他具有权限的用户下执行跟踪(不过当我在scott用户下执行跟踪之后发现没有跟踪文件)。
            (1)开启跟踪: 
                      Alter session set sql_trace true;
            (2)执行需要跟踪的操作,比如
                      Select ename from emp where empno=7788; 
            (3)关闭跟踪 
                      Alter session set sql_trace false;
2、转换、查询跟踪文件 
        我的初始参数user_dump_dest参数的值为/home/oracle/orcl/udump,则跟踪完成之后,我再这个目录下将看到这个跟踪文件,但是当我打开它是发现里面有很多跟踪文件,我不知道哪个文件时我刚才的跟踪文件,所以接下来,我再回到sql*plus里面查询我执行跟踪的会话的进程id,因为跟踪文件的文件名的格式是(实例名_ora_进程id.trc),我的实例名是orcl,所以我执行查询来确定进程id,查询之前先给用户赋予查询v$process、v$session和v$mystat视图的权限:
                        Grant select on v_$process to scott;
                        Grant select on v_$session to scott;
                        Grant select on v_$mystat to scott;
         还好,在赋予权限的时候我时刻记得,在oracle中,我平时所访问的v$视图其实就是一个同义词,她不是实际的视图,而是由底层视图创建的同义词,而这些视图的底层视图与这些视图名称极为相似,比如v$process的底层视图是v_$process,所以在赋权时应该将v_$process视图的查询权限赋给用户。赋权完成之后就可以执行查询了:
                         Select spid
                         From v$process p,v$session s
                         Where p.addr=s.paddr and s.sid=(select sid from v$mystat where
                                                                                        rownum=1); 
         在返回的查询结果中,spid(也就是会话进程id)为2842,则我确定我刚才的跟踪文件为orcl_ora_2842.trc。 
         确定了跟踪文件就可以对其进行格式转换了: 
      Tkprof orcl_ora_2842.trc orcl_ora_2842_1.prf explain=system/password;
         这不是在sql*plus中运行,而是在终端中运行。其实这个转换并不是必须的,但是阅读orcl_ora_2842.trc确实有点费劲,所以我用tkprof实用程序对跟踪文件进行转换,但是这种转换不会包含原始跟踪文件的所有信息,她会丢失一些信息,但是转换之后便于阅读。转换完毕,我先打开它,看看这些跟踪信息···

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25244847/viewspace-693287/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2011-01-14

  • 博文量
    9
  • 访问量
    32073