• oracle autotrace使用


    通过以下方法可以把Autotrace的权限授予Everyone,
      如果你需要限制Autotrace权限,可以把对public的授权改为对特定user的授权。 

    D:oracleora92>sqlplus /nolog 
      SQL*Plus: Release 9.2.0.1.0 - Production on 星期二 6月 3 15:16:03 2003 
      Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved. 
    SQL> connect sys as sysdba

      请输入口令:
      已连接。

    SQL> @? dbmsadminutlxplan

      表已创建。

    SQL> create public synonym plan_table for plan_table;

      同义词已创建。

    SQL> grant all on plan_table to public ;

      授权成功。   

    SQL> @?sqlplusadminplustrce 
      SQL> 
      SQL> drop role plustrace; 
      drop role plustrace 
      *

      ERROR 位于第 1 行:
      ORA-01919: 角色’PLUSTRACE’不存在

    SQL> create role plustrace;

      角色已创建
    SQL> 
    SQL> grant select on v_$sesstat to plustrace;

      授权成功。

    SQL> grant select on v_$statname to plustrace;
    授权成功。
    SQL> grant select on v_$session to plustrace;

      授权成功。

    SQL> grant plustrace to dba with admin option;

      授权成功。

    SQL> 
    SQL> set echo off
      DBA用户首先被授予了plustrace角色,然后我们可以把plustrace授予public
      这样所有用户都将拥有plustrace角色的权限.

    SQL> grant plustrace to public ;

      授权成功。
      然后我们就可以使用AutoTrace的功能了.

    SQL> connect eqsp/eqsp

      已连接。

    SQL> set autotrace on 
    SQL> set timing on 
    SQL>
      关于Autotrace几个常用选项的说明:
      SET AUTOTRACE OFF ---------------- 不生成AUTOTRACE 报告,这是缺省模式
      SET AUTOTRACE ON EXPLAIN ------ AUTOTRACE只显示优化器执行路径报告
      SET AUTOTRACE ON STATISTICS -- 只显示执行统计信息
      SET AUTOTRACE ON ----------------- 包含执行计划和统计信息
      SET AUTOTRACE TRACEONLY ------ 同set autotrace on,但是不显示查询输出

    SQL> set autotrace traceonly 
    SQL> select table_name from user_tables;

    已选择98行。
      已用时间: 00: 00: 00.04

    execution Plan 
      ---------------------------------------------------------- 
      0 select STATEMENT ptimizer=CHOOSE 
      1 0 NESTED LOOPS 
      2 1 NESTED LOOPS (OUTER) 
      3 2 NESTED LOOPS (OUTER) 
      4 3 NESTED LOOPS (OUTER) 
      5 4 NESTED LOOPS (OUTER) 
      6 5 NESTED LOOPS 
      7 6 TABLE ACCESS (BY INDEX ROWID) OF ’OBJ$’ 
      8 7 INDEX (RANGE SCAN) OF ’I_OBJ2’ (UNIQUE) 
      9 6 TABLE ACCESS (CLUSTER) OF ’TAB$’ 
      10 9 INDEX (UNIQUE SCAN) OF ’I_OBJ#’ (NON-UNIQUE) 
      11 5 TABLE ACCESS (BY INDEX ROWID) OF ’OBJ$’ 
      12 11 INDEX (UNIQUE SCAN) OF ’I_OBJ1’ (UNIQUE) 
      13 4 INDEX (UNIQUE SCAN) OF ’I_OBJ1’ (UNIQUE) 
      14 3 TABLE ACCESS (CLUSTER) OF ’USER$’ 
      15 14 INDEX (UNIQUE SCAN) OF ’I_USER#’ (NON-UNIQUE) 
      16 2 TABLE ACCESS (CLUSTER) OF ’SEG$’ 
      17 16 INDEX (UNIQUE SCAN) OF ’I_FILE#_BLOCK#’ (NON-UNIQUE) 
      18 1 TABLE ACCESS (CLUSTER) OF ’TS$’ 
      19 18 INDEX (UNIQUE SCAN) OF ’I_TS#’ (NON-UNIQUE) 
      Statistics 
      ---------------------------------------------------------- 
      0 recursive calls 
      0 db block gets 
      1389 consistent gets 
      0 physical reads 
      0 redo size 
      2528 bytes sent via SQL*Net to client 
      569 bytes received via SQL*Net from client 
      8 SQL*Net roundtrips to/from client 
      0 sorts (memory) 
      0 sorts (disk) 
      98 rows processed 
      SQL>
      补充一下在10g中的用法
      在10g中带有plan_table这张表,但是将名字改为了plan_table$
      只需$ORACLE_HOME/sqlplus/admin/plustrce.sql创建plustrace角色
      grant plustrace to public

    设置Autotrace的命令。

    SET AUTOTRACE OFF
    此为默认值,即关闭Autotrace

    SET AUTOTRACE ON
    产生结果集和解释计划并列出统计

    SET AUTOTRACE ON EXPLAIN
    显示结果集和解释计划不显示统计

    4
    SETAUTOTRACE TRACEONLY
    显示解释计划和统计,尽管执行该语句但您将看不到结果集

    SET AUTOTRACE

    TRACEONLY STATISTICS
    只显示统计

    Eg:SET AUTOTRACE ON, set timing on, alter session set time_statistics=true;


    Autotrace执行计划的各列的涵义

    ID_PLUS_EXP:每一步骤的行号

    PARENT_ID_PLUS_EXP:每一步的Parent的级别号

    PLAN_PLUS_EXP:实际的每步

    OBJECT_NODE_PLUS_EXP:Dblink或并行查询时才会用到

    AUTOTRACE Statistics常用列解释

    db block gets
    从buffer cache中读取的block的数量

    consistent gets
    从buffer cache中读取的undo数据的block的数量

    physical reads
    从磁盘读取的block的数量

    redo size
    DML生成的redo的大小

    sorts (memory)
    在内存执行的排序量

    sorts (disk)
    在磁盘上执行的排序量
  • 相关阅读:
    软件测试之测试策略
    如何在需求不明确的情况下保证测试质量
    《Web 前端面试指南》1、JavaScript 闭包深入浅出
    Vue-Router 页面正在加载特效
    Webpack 配置摘要
    svn 常用命令总结
    Vue + Webpack + Vue-loader 系列教程(2)相关配置篇
    Vue + Webpack + Vue-loader 系列教程(1)功能介绍篇
    关于Vue.js 2.0 的 Vuex 2.0,你需要更新的知识库
    Vue.js 2.0 和 React、Augular等其他框架的全方位对比
  • 原文地址:https://www.cnblogs.com/future2012lg/p/3176604.html
Copyright © 2020-2023  润新知