SQL>set timing on                                   --显示Elapsed执行总时间。区别于set time on

方式一:
SQL>set autotrace on/off                         --显示结果集、执行计划和统计信息(执行SQL)
SQL>set autotrace traceonly                    --显示执行计划和统计信息, 不显示结果集(执行SQL)
SQL>set autotrace traceonly explain        --只显示执行计划(不执行SQL)
SQL>set autotrace traceonly statistics     --只显示统计信息(不执行SQL)
SQL>SELECT * FRM T_BD_ACCOUNTVIEW;

方式二:
SQL>explan plan for select * from t_bd_accountview;
SQL>SELECT plan_table_output FROM table(DBMS_XPLAN.DISPLAY('t_bd_accountview'));
SQL>SELECT * FROM table(dbms_xplan.display);

方式三:
SQL>alter session set SQL_TRACE=true;
SQL>SELECT sid, serial#, username from v$session where username = 'xxxx'
SQL>exec dbms_system.set_SQL_TRACE_in_session(sid, serial#,true/false)
--跟踪其它用户
SQL>alter session set events '10046 trace name context forever, level 8')   //or '10046 trace name context off'
SQL>exec dbms_system.set_ev(sid, serial#,10046, 0-8(level), username);

执行计划中的字段解释:
ID:一个序号,但不是执行的先后顺序。执行的先后顺序根据缩进来判断
Operation:当前操作的内容
Rows:当前操作的cardinality, Oracle根据CBO估算当前操作返回的结果集
Cost(CPU):Oracle计算出来的一个数值(代价), 用于说明SQL执行的代价
Time: oracle估计当前操作的时间
谓词说明:
Access:影响数据的访问路径(表还是索引)
Filter:只起过滤数据的作用。

explain plan各列的含义:
ID_PLUS_EXP
PARENT_ID_PLUS_EXP
PLAN_PLUS_EXP
OBJECT_NODE_PLUS_EXP

Statistics各列含义:
db block gets         --从buffer cache中读取的block数量
constient gets      --从buffer cache中读取的undo数据的block数量
                                 ---because of查询过程中,由于其它回话对数据块进行了操作,而对所要查询的块有了修改。读取其以保证一致性。
physical reads     --从磁盘读取的block的数量
redo size              --DML生成的redo的大小 ( 重做数——执行SQL的过程中,产生的重做日志的大小)
sorts(memory)     --在内存执行的排序量
sorts(dis)             --在磁盘执行的排序量

逻辑读:db block gets + constient gets
物理读:physical reads

缓冲区使用的命中率 = 1 - 物理读 / (缓冲块读+缓冲undo读)
SQL>SELECT name, value FROM v$sysstat WHERE name IN('db block gets', 'consistent gets', 'physical reads');
如果buffer cache的命中率在90%以上,否则需要增加数据缓冲区的大小

动态分析
如果执行计划中出现提示:
--dynamic sampling used for the statement
表示用户使用了动态采样技术CBO模式下。===>从而推断这个表可能没有做过分析,可有导致两种现象:
1.该表没有做过分析,CBO采用动态采样分析数据,也可以得出正确的执行计划
2.分析信息过旧,CBO不会动态采样,采用旧的信息,从而导致错误的执行计划。

ORACLE 执行计划2相关推荐

  1. Oracle执行计划突变诊断之统计信息收集问题

    Oracle执行计划突变诊断之统计信息收集问题 1.  情形描述 DB version:11.2.0.4 WITH SQL1 AS(SELECT LAC,CI,TO_NUMBER(C.LONGITUD ...

  2. ORACLE执行计划的一些基本概念

    本文介绍了ORACLE执行计划的一些基本概念,供学习应用. 一.相关的概念 Rowid的概念:rowid是一个伪列,既然是伪列,那么这个列就不是用户定义,而是系统自己给加上的.对每个表都有一个rowi ...

  3. Oracle 执行计划

    Oracle执行计划是什么 关于执行计划的概念,相信大家都有过基础的了解.这里不详细解释概念性东西,只需要知道.执行计划是Oracle根据SQL语句生成的一个执行步骤的表述即可. 执行计划分三部分:1 ...

  4. 海天 oracle,Oracle执行计划详解

    作者:TTTBLOG --- 简介: 本文全面详细介绍oracle执行计划的相关的概念,访问数据的存取方法,表之间的连接等内容. 并有总结和概述,便于理解与记忆! +++ 目录 --- 一.相关的概念 ...

  5. oracle执行计划分析(转载)

    2019独角兽企业重金招聘Python工程师标准>>> (转载,原文地址:http://blog.itpub.net/24478467/viewspace-705754/) 简介: ...

  6. Oracle 执行计划 提示 'PLAN_TABLE' is old version 解决方法

    用set autotrace 或者 explain plan for 生成执行计划时,有如下提示: Note -----    - 'PLAN_TABLE' is old version 导致这个错误 ...

  7. [转]Oracle执行计划的相关概念

    [转]Oracle执行计划的相关概念 本文介绍了ORACLE执行计划的一些基本概念,供学习应用. 一.相关的概念 Rowid的概念:rowid是一个伪列,既然是伪列,那么这个列就不是用户定义,而是系统 ...

  8. ORACLE 执行计划分析

    http://www.cnblogs.com/rootq/archive/2008/09/06/1285779.html ORACLE 执行计划分析 一.什么是执行计划 An explain plan ...

  9. 【转】Oracle执行计划解释

    Oracle执行计划解释 一.相关的概念     Rowid的概念:rowid是一个伪列,既然是伪列,那么这个列就不是用户定义,而是系统自己给加上的. 对每个表都有一个rowid的伪列,但是表中并不物 ...

  10. oracle通过执行计划cost,Oracle 执行计划(5)—cost成本之索引范围扫描-B树索引

    Oracle 执行计划(5)-cost成本之索引范围扫描-B树索引 SQL>  select * from t1 where a<600 ; 已选择599行. 已用时间:  00: 00: ...

最新文章

  1. 注册表数据提取工具RegRipper
  2. Lua——循环和流程控制(if,for,while,break,goto,repeat...until)
  3. 二层冗余网络引起的问题
  4. intel ssd toolbox 绿色单文件_你想要的大容量来了!影驰擎GA-E 16TB SSD上手:速度喜人-SSD,固态 ——快科技(驱动之家旗下媒体)-...
  5. 阿里巴巴整理的python_阿里P8大佬整理的2020年最全99道python面试题,文末附答案...
  6. Docker : 在宿主机查看docker使用cpu、内存、网络、io情况
  7. calendar控件使用 extjs_extjs年月选择日历及通用js同步ajax调用返回json object
  8. linux svn 客户端安装
  9. Android之内容提供者ContentProvider的总结
  10. 系泊系统悬链线matlab,基于悬链线方程的系泊系统状态分析
  11. asp.net pdf如何转换成tif_PDF如何转换成PPT格式?PDF转PPT软件使用方法分享
  12. thon中的全局变量
  13. 视频直播本地测试服务器搭建
  14. 电信天翼网关连接多个路由器
  15. 011 MySQL性能分析
  16. 《饥饿游戏》第三章-26
  17. php报错:PHP Startup Unable to load dynamic library
  18. oppo a36参数配置
  19. linux -- 嵌入式linux下wifi无线网卡驱动
  20. linux指法教程,linux系统指法练习与打字游戏软件

热门文章

  1. maven乱码解决方案---修改maven编码
  2. 下载华为交换机MIB参考文件并使用snmpwalk获取OID信息
  3. Hibernate性能提升
  4. C#中析构函数,命名空间及字符串的运用(Ninth day)
  5. 需要按次序点击链接的网页特效
  6. 带有静态方法的类(java中的math类)
  7. [轉]VS2010 SP1 TFS 2010 SP1 官方正式版下载
  8. Modelsim仿真流程
  9. 检测是否是手机访问接口
  10. 多域名下Mvc的Http缓存冲突的问题