1 2 3 4

获取执行计划之Autotrace

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. 可以输出运行时的相关统计信息
    2. 有多种模式可供选择
  • 缺点
    1. 必须要等SQL语句执行完,才出结果
    2. 无法看到表被访问了多少次
    3. 当存在绑定变量时执行计划可能不准
      博客园分享码
posted @ 2021-04-03 09:40  As-before-如初  阅读(131)  评论(0编辑  收藏  举报