zoukankan      html  css  js  c++  java
  • Oracle SQL语句追踪

    Oracle SQL语句追踪

    1   SQL语句追踪

      追踪SQL语句的执行过程需要在Oracle服务器端进行,Oracle服务器端会检测并记录访问进程所执行的所有SQL语句。下面使用的命令都是在命令行模式下执行的,所以我们需要使用命令行以管理员身份登陆Oracle数据库。下面就是该工具使用的详细步骤。

      首先要追中SQL语句,我们需要确定追踪客户端进程的会话ID,下面命令枚举了当前服务器所有访问进程会话ID和串口,然后选择需要检测的会话ID和串口。

    Select username, sid, serial# from v$session where username is not null;

      然后针对选中的会话ID和串口进行SQL语句追踪,如下命令所示。

    EXECUTE sys.dbms_system.set_sql_trace_in_session(10,  2642, TRUE);

      开始追踪SQL语句后,我们可以在客户端进行操作,而这些操作过程使用的SQL语句都将被记录下来,直到我们结束SQL语句追踪。

      最后客户端操作完成之后,使用下面命令便可以结束SQL语句追踪。

    EXECUTE sys.dbms_system.set_sql_trace_in_session(10,  2642, FALSE);

      追中结束后Oracle服务端文件夹下会产生一个最新的.trc后缀的文件,我们可以使用Search Everything工具查找最近时间生产的.trc文件,然后使用tkprof工具对该文件进行解析。

    2 TRC文件解析

      解析生成的.trc文件,需要使用tkprof工具,该工具有非常多的复杂参数可供使用,如果不做复杂要求,可以使用下面简单的命令将.trc文件输出成文本文件。

      解析命令如下:

    tkprof sqlplus_007.trc out.txt

        sqlplus_007.trc为数据追踪文件

        out.txt 为输出格式化文件

      打开out.txt文件,便可以查阅到SQL语句的执行情况。

  • 相关阅读:
    第194场周赛
    刷leetcode的心得
    91. Decode Ways
    23. Merge k Sorted Lists
    19. Remove Nth Node From End of List
    21. Merge Two Sorted Lists
    222. Count Complete Tree Nodes
    958. Check Completeness of a Binary Tree
    课程学习总结报告
    结合中断上下文切换和进程上下文切换分析Linux内核一般执行过程
  • 原文地址:https://www.cnblogs.com/wanghaiyang1930/p/4478683.html
Copyright © 2011-2022 走看看