Autotrace 简介
AUTOTRACE是一项SQL*Plus功能,自动跟踪为SQL语句生成一个执行计划并且提供与该语句的处理有关的统计。
AUTOTRACE的好处是您不必设置跟踪文件的格式,并且它将自动为SQL语句显示执行计划。
Autotrace 选项说明
命令 输出内容 简写 是否真实执行 SET AUTOTRACE OFF 缺省模式,只显示 SQL 执行结果 SET AUTOT OFF 是 SET AUTOTRACE ON 显示 SQL 结果、执行路径和资源消耗 SET AUTOT ON 是 SET AUTOTRACE TRACEONLY 显示 SQL 结果数量、执行路径和资源消耗 SET AUTOT TRACE 是 SET AUTOTRACE TRACEONLY EXPLAN 只显示 SQL 执行路径 SET AUTOT TRACE EXP Select 语句没有,DML 会被执行 SET AUTOTRACE TRACEONLY STATISTICS 只显示资源消耗 SET AUTOT TRACE STAT
统计信息
统计信息 解释 recursive calls 产生的递归 sql 调用的条数 Db block gets 从 buffer cache 中读取的 block 的数量 consistent gets 从 buffer cache 中读取的 undo 数据的 block 的数量 physical reads 从磁盘读取的 block 的数量 redo size DML 生成的 redo 的大小 bytes sent via SQL*Net to client 数据库服务器通过 SQL*Net 向查询客户端发送的查询结果字节数 bytes received via SQL*Net from client 通过 SQL*Net 接受的来自客户端的数据字节数 SQL*Net roundtrips to/from client 服务器和客户端来回往返通信的 Oracle Net messages 条数 sorts (memory) 在内存执行的排序量 sorts (disk) 在磁盘上执行的排序量 rows processed 处理的数据的行数
Autotrace 优缺点
优点
可以输出运行时的相关统计信息 有多种模式可供选择 缺点 1. 必须要等 SQL 语句执行完,才出结果 2. 无法看到表被访问了多少次 3. 当存在绑定变量时执行计划可能不准