• Oracle 10g中的SQL跟踪新方法


    Oracle 10g中的SQL跟踪新方法

    1. 先确定需要跟踪的Session或者Client

    select * from v$session

    --会话级别

    可以设置identifier方便查询跟踪文件

    alter session set TRACEFILE_IDENTIFIER = 'something_here';

    begin

    --当前自己的Session可以用:

    --EXECUTE DBMS_MONITOR.SESSION_TRACE_ENABLE(NULL,NULL, TRUE, TRUE);

    --别人的Session可以用:

    --dbms_monitor.session_trace_disable(session_id=>97,serial_num=>17);

    dbms_monitor.session_trace_enable(session_id=>97,serial_num=>17,waits=>TRUE,binds=>FALSE);

    end;

    查看启动的会话级别跟踪

    select sql_trace,sql_trace_waits,sql_trace_binds from v$session where osuser='FASTENAL\txu'

    select sql_trace,sql_trace_waits,sql_trace_binds  from v$session

    --客户端级别

    begin

    --dbms_monitor.client_id_trace_enable(client_id=>'LPT-SHAI08',waits=>TRUE,binds=>FALSE);

    dbms_monitor.client_id_trace_disable(client_id=>'LPT-SHAI08');

    end;

    查看启动的客户级别跟踪 

    select * from dba_enabled_traces

    2.确定跟踪文件的位置

    --trace文件位置

    select value from v$parameter where name='diagnostic_dest'

    -- trace文件位置in 11g

    select value from v$diag_info where name='Default Trace File'

    3.使用tvd$xtat 生成报告。

    The tool

    http://antognini.ch/top/downloadable-files/

    http://antognini.ch/downloads/tvdxtat_40beta9.zip

    How to use tvdxtat to generate formatted trace file as html

    Command line:

    tvdxtat.cmd -i D:\ORACLE11XE\APP\ORACLE\diag\rdbms\xe\xe\trace\xe_ora_328.trc -o d:\mytvd.html -s no -w yes

    下面是个收集直方图,删除直方图的例子

    -自动收集和手动收集

    begin
      dbms_stats.gather_table_stats(ownname => 'SYS', tabname =>
    'TAB1', estimate_percent => DBMS_STATS.AUTO_SAMPLE_SIZE,
    method_opt => 'FOR ALL COLUMNS SIZE AUTO');
    end;

    analyze table TAB1 compute statistics for columns B size 3

    select histogram,num_buckets,column_name from user_tab_col_statistics
    where table_name='TAB1' and column_name='B'

    begin
    dbms_stats.delete_column_stats(ownname => user,
    tabname => 'TAB1',
    colname => 'B',
    col_stat_type => 'HISTOGRAM');
    end;

    select histogram,num_buckets,column_name from user_tab_col_statistics
    where table_name='TAB1' and column_name='B'
  • 相关阅读:
    实现Maven自动下载源代码包并关联
    Maven3入门篇
    小典故:为什么数组的索引总是从0开始,而不是1?
    C语言算法探究之(一):算法的准确性
    C语言算法探究之(二):算法的准确性
    Visual Studio对无用引用(unused using)的处理方法
    C# CRC8的实现(原创)
    C#4.0:新功能和展望
    C#控件重绘学习(一)
    双加号(++)在C#中的用法解释
  • 原文地址:https://www.cnblogs.com/tracy/p/2056505.html
Copyright © 2020-2023  润新知