zoukankan      html  css  js  c++  java
  • 用oracle trace 来跟踪session

    用oracle trace 来跟踪session

    用oracle 密碼登入

    1.在数据库安装的电脑上,使用SQL plus 用 SYSDBA 身份连接到数据库.

    2.找到要进行跟踪的会话.

    select sid,serial#,username from v$session ;


    3.启用相关会话的SQL trace .

    exec dbms_system.set_sql_trace_in_session(7,284,true)

    4.从指定SESSION 运行一些程序过程.

    5.停止会话跟踪.

    exec dbms_system.set_sql_trace_in_session(7,284,false)

    6.使用tkprof 程序对跟踪到的文件进行格式化.

    tkprof aaa.trc aaa.txt

    7.查看aaa.txt就可以了.

    ----如果是跟踪本SESSION,可以用:

    dbms_session.set_sql_trace(true);
    dbms_session.set_sql_trace(false);

    SQL_TRACE跟踪SQL语句,要使用SQL_TRACE,必须使用SYS用户,使用SYSDBA身份登录,下列的命令使用SQL*PLUS或pl/sql developer的Command窗口。
    以跟踪INTOOLS为例,首先使用如下SQL语句获取INTOOLS的SESSION信息
    select sid, serial#, username from v$session;

    假设取到的INTOOLS登录session的sid = 9, serial# = 71,则执行下列命令对该session进行监听
    exec dbms_system.set_sql_trace_in_session(9,71,true)

    然后操作INTOOLS,

    操作完成后使用下面命令关闭监听
    exec dbms_system.set_sql_trace_in_session(9,71,false)

    则在%ORACLE_HOME%ADMIN[服务名]udump目录下生成最新的.trc跟踪文件,可使用ORACLE提供的工具程序tkproc将.trc文件解析为更易读的文件:
    tkproc [.trc文件路径] [目标文件路径]

    后面还可加上如下一些参数,其中比较有用的一个排序选项是fchela,即按照elapsed time fetching来对分析的结果排序(记住要设置初始化参数time_statistics=true),生成的.prf文件将把最消耗时间的sql放在最前面显示。另外一个有用的参数就是sys, 这个参数设置为no可以阻止所有以sys用户执行的sql被显示出来,这样可以减少分析出来的文件的复杂度,便于查看。

    步骤:

    1.select sid,serial#,username,osuser,machine from v$session;查询session的sid,serial#

    2.exec dbms_system.set_sql_trace_in_session(141,6,true);开始跟踪

    3.exec dbms_system.set_sql_trace_in_session(141,6,false) 停止跟踪

    4.tkprof *.trc *.txt

    5.查看文件

     
  • 相关阅读:
    异常处理
    泛型介绍
    Echart可视化学习(十)
    终Echart可视化学习(十二)
    Echart可视化学习(九)
    Echart可视化学习(十一)
    Ubuntu版本介绍
    大数据量分页存储过程效率测试附代码
    把 ubuntu linux 装入移动硬盘,并在不同电脑上运行
    后来才知道linux中的0、1、2、4、+、、u、g、o、a、=、r、w、x、d、、l、s、p、c、b非常重要
  • 原文地址:https://www.cnblogs.com/p81023c/p/12923202.html
Copyright © 2011-2022 走看看