Oracle 开启autotrace功能


默认的Oracle的sqlplus是不能够启动执行分析计划、统计执行效率的,启动如下功能只需要几步:

1:通过sys用户sysdba角色登陆

2:创建autotrace 角色,执行如下脚本

  $ORACLE_HOME\RDBMS\ADMIN\tracetab.sql

  在Oracle9i中需要运行$ORACLE_HOME\RDBMS\ADMIN\utlxplan.sql脚本生成plan_table表;
  在Oracle10g中PLAN_TABLE不再需要创建,Oracle缺省增加了一个字典表PLAN_TABLE$,然后基于PLAN_TABLE$创建公用同义词供用户使用

   将该角色赋予需要进行跟踪分析的用户

3:启动跟踪

用法: SET AUTOT[RACE] {OFF | ON | TRACE[ONLY]} [EXP[LAIN]] [STAT[ISTICS]]

举例:
SET AUTOT[RACE] OFF 停止AutoTrace
SET AUTOT[RACE] ON 开启AutoTrace,显示AUTOTRACE信息和SQL执行结果
SET AUTOT[RACE] TRACEONLY 开启AutoTrace,仅显示AUTOTRACE信息
SET AUTOT[RACE] ON EXPLAIN 开启AutoTrace,仅显示AUTOTRACE的EXPLAIN信息
SET AUTOT[RACE] ON STATISTICS开启AutoTrace,www.bkjia.com仅显示AUTOTRACE的STATISTICS信息

结果解释
physical reads 物理读——执行SQL的过程中,从硬盘上读取的数据块个数
redo size      重做数——执行SQL的过程中,产生的重做日志的大小
bytes set via sql*net to client  通过sql*net发送给客户端的字节数
bytes received via sql*net from client  通过sql*net接受客户端的字节数
sorts(memory)  在内存中发生的排序
sorts(disk)    不能在内存中发生的排序,需要硬盘来协助
rows processed 结果的记录数 

 逻辑读 =(db block gets+ consistent gets)

set atuotrace on;

set autotrace traceonly explain statistics;

相关内容