Welcome 微信登录

首页 / 数据库 / MySQL / Oracle分析query plan

清空Shared pool:alter system flush shared_pool;但为了整个内存的清空,只好将整个Oracle RAC环境的实例和数据库都关机,再重新启动。可以采用清空buffer cache的方式来做:alter system flush buffer_cache; 分析query plan,explain plan for select * fromHZCZRK_JBXXB,HZCZRK_ZPXXB WHERE HZCZRK_JBXXB.RYID = HZCZRK_ZPXXB.RYID;select plan_table_output fromtable(dbms_xplan.display());得到结果:| Id | Operation                    |Name             | Rows  | Bytes |TempSpc| Cost (%CPU)| Time   |-----------------------------------------------------------------------------------------------------------| 0| SELECT STATEMENT           |                    |  2898K|  572M|     | 240K (1)| 00:48:06 || 1|  MERGE JOIN                  |                    |  2898K|  572M|     | 240K (1)| 00:48:06 || 2| TABLE ACCESS BY INDEX ROWID|HZCZRK_ZPXXB     |  2898K|  146M|     | 120K (1)| 00:24:07 || 3|    INDEX FULL SCAN         | INDEX_HZCZRK_ZPXXB |  2898K|      |     |  6771  (1)| 00:01:22 ||*  4| SORT JOIN                  |                    | 2898K| 425M|  2156M|  119K  (1)| 00:24:00 || 5|    TABLE ACCESS FULL       | HZCZRK_JBXXB     | 2898K| 425M|     | 21194  (3)| 00:04:15 |----------------------------------------------------------------------------------------------------------- Predicate Information (identified byoperation id):---------------------------------------------------  4-access("HZCZRK_JBXXB"."RYID"="HZCZRK_ZPXXB"."RYID")      filter("HZCZRK_JBXXB"."RYID"="HZCZRK_ZPXXB"."RYID") 使用set autotrace traceonly后可以查看执行计划、统计信息,如query:SELECT COUNT(*) FROM HZCZRK_JBXXB;,执行计划、统计信息如下:------------------------------------------------------------------------------| Id | Operation           |Name       | Rows  | Cost (%CPU)| Time   |------------------------------------------------------------------------------| 0| SELECT STATEMENT      |              |   1 | 9643 (2)| 00:01:56 || 1|  SORT AGGREGATE     |              |   1 |            |          || 2| INDEX FAST FULL SCAN| SYS_C0010867|    17M| 9643 (2)| 00:01:56 |------------------------------------------------------------------------------  统计信息----------------------------------------------------------       1  recursive calls       0  db block gets      37509 consistent gets   37485  physical reads       0  redo size     537  bytes sent via SQL*Net toclient     524  bytes received via SQL*Netfrom client       2  SQL*Net roundtrips to/fromclient       0  sorts (memory)       0  sorts (disk)1        rows processedconsistent gets代表内存消耗,physicalreads代表磁盘I/O消耗,单位都是数据块(DB_BLOCK_SIZE)更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12CentOS 6.4 安装Oracle 11g的遇到的问题以及解决方法Oracle执行分析详细相关资讯      Oracle分析  query plan 
  • Oracle执行分析详细  (03/02/2014 13:15:13)
本文评论 查看全部评论 (0)
表情: 姓名: 字数