zoukankan      html  css  js  c++  java
  • 在sqlplus中执行set autotrace on 报cannot set autotrace 错误解决方法

    今天在一台机器中想分析下执行计划,但是在sqlplus中输入set autotrace on 报cannot set autotrace 错误

    解决方法如下:

    首先必须采用用Oracle的sqlplus登陆sys账号

    sqlplus " sys/sys@XXX as sysdba "

    然后执行如下脚本:

    @?\sqlplus\admin\plustrce.sql (创建plustrace角色并授权)   

    @?\rdbms\admin\utlxplan.sql (创建执行计划的表)

    然后执行: grant all on plan_table to public; (也可以授权给某一个单独的用户)

                   grant plustrace to public ; 

    然后就可以进行 set autotrace了  但是只能在sqlplus中运行相关命令,在pl/sql developer等工具中仍然报错

    关于Autotrace几个常用选项的说明:
    SET AUTOTRACE OFF ---------------- 不生成AUTOTRACE 报告,这是缺省模式

    SET AUTOTRACE ON EXPLAIN ------ AUTOTRACE只显示优化器执行路径报告

    SET AUTOTRACE ON STATISTICS -- 只显示执行统计信息

    SET AUTOTRACE ON ----------------- 包含执行计划和统计信息

    SET AUTOTRACE TRACEONLY ------ 同set autotrace on,但是不显示查询输出

    Autotrace执行计划的各列的涵义

    序号

    列名

    解释

    1

    ID_PLUS_EXP

    每一步骤的行号

    2

    PARENT_ID_PLUS_EXP

    每一步的Parent的级别号

    3

    PLAN_PLUS_EXP

    实际的每步

    4

    OBJECT_NODE_PLUS_EXP

    Dblink或并行查询时才会用到

    AUTOTRACE Statistics常用列解释

    序号

    列名

    解释

    1

    db block gets

    buffer cache中读取的block的数量

    2

    consistent gets

    buffer cache中读取的undo数据的block的数量

    3

    physical reads

    从磁盘读取的block的数量

    4

    redo size

    DML生成的redo的大小

    5

    sorts (memory)

    在内存执行的排序量

    7

    sorts (disk)

    在磁盘上执行的排序量

  • 相关阅读:
    Oracle列转行函数使用
    JavaScript笔记整理
    23种设计模式之桥梁模式
    23种设计模式之状态模式
    23种设计模式之解释器模式
    23种设计模式之备忘录模式
    23种设计模式之访问者模式
    23种设计模式之观察者模式
    23种设计模式之组合模式
    23种设计模式之适配器模式
  • 原文地址:https://www.cnblogs.com/cangos/p/2293935.html
Copyright © 2011-2022 走看看