SQL> set autotrace traceonly explain
SP2-0613: 无法验证 PLAN_TABLE 格式或实体
SP2-0611: 启用EXPLAIN报告时出错
解决方法:
1. 以SYS用户登录
CONNECT / @ as SYSDBA ;
1. 创建PLAN_TABLE(如果未创建)
运行utlxplan.sql(ORACLE_HOME/rdbms/admin下)脚本;
2. 创建plustrace角色(如果未创建)
执行plustrce.sql(ORACLE_HOME/sqlplus/admin/plustrce.sql)脚本;
3. 将plustrace role赋给当前用户
grant plustrace to scott;或grant plustrace to public;
设置Autotrace的命令
序号 列名 解释
1 SET AUTOTRACE OFF 此为默认值,即关闭Autotrace
2 SET AUTOTRACE ON 产生结果集和解释计划并列出统计
3 SET AUTOTRACE ON EXPLAIN 显示结果集和解释计划不显示统计
4 SETAUTOTRACE TRACEONLY 显示解释计划和统计,尽管执行该语句,但您将看不到结果集
5 SET AUTOTRACE TRACEONLY STATISTICS 只显示统计
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) 在内存执行的排序量
6 sorts (disk) 在磁盘上执行的排序量