Oracle如何分析执行计划
执行计划:
首先在分析的用户下执行rdbms\admin\utlxplan.sql
用sys用户登录:sqlplus\admin\plustrace.sql
grant sqlplus to user_name;
1. 找出耗费资源比较多的语句
SELECT ADDRESS,
substr(SQL_TEXT,1,20) Text,
buffer_gets,
executions,
buffer_gets/executions AVG
FROM v$sqlarea
WHERE executions>0
AND buffer_gets > 100000
ORDER BY 5;
2. 如何分析执行计划:
SQL> SELECT * FROM LARGE_TABLE where USERNAME = ‘TEST’;
Query Plan
-----------------------------------------
SELECT STATEMENT Optimizer=CHOOSE (Cost=1234 Card=1 Bytes=14)
TABLE ACCESS FULL LARGE_TABLE [:Q65001] [ANALYZED]
TABLE ACCESS FULL large_table:在large_table上做全表扫描
[:Q65001] 表明该部分查询是以并行方式运行的。
[ANALYZED] 表明操作中引用的对象被分析过了,在数据字典中有该对象的统计信息可以供CBO使用。
3. 各个表之间是如何关联的
在执行计划中,需要知道哪个操作是先执行的,哪个操作是后执行的,这对于判断哪个表为驱动表有用处。判断之前,如果对表的访问是通过rowid,且该rowid的值是从索引扫描中得来得,则将该索引扫描先从执行计划中暂时去掉。然后在执行计划剩下的部分中,判断执行顺序的指导原则就是:最右、最上的操作先执行。
4. 在RBO中,以from 子句中从右到左的顺序选择驱动表,即最右边的表为第一个驱动表但是,在RBO中,也是有一套规则来决定使用哪种连接类型和哪个表作为驱动表,在选择时肯定会考虑当前索引的情况,还可能会考虑where 中的限制条件,但是肯定是与where中限制条件的位置无关。
5. 在CBO中,如果没有统计信息,则在from子句中从左到右的顺序选择驱动表。如果用ordered它会按从左到右的顺序选择驱动表。但是如果对表或索引进行分析,则优化器会自动根据cost值决定采用哪种连接类型,这与where子句中各个限制条件的位置没有任何关系,如果想改变优化器选择的连接类型或驱动表,则要使用hints。
oracle中分析sql语句执行计划的方法 如何生成explain plan? 解答:运行utlxplan.sql. 建立plan 表 针对特定SQL语句,使用 explain plan set statement_id = 'tst1'...
我们对 SQL 语句进行调优时,非常重要的一个方法就是分析 SQL 的执行计划。查看 Oracle 中 SQL 语句的执行计划有很多方法,例如通过 PL/SQL Developer 、 EM 或者...
2014教师资格材料分析辅... 2014小学教师资格考试《... 2014年幼儿园教师资格... ORACLE的执行计划 39页 1下载券 如何看懂Oracle执行计划 6页 免费 Oracle执行...
ORACLE的执行计划_IT/计算机_专业资料。第1页:背景知识 第2页:Rowid的概念 ...(Nested Loops, NL) 第9页:如何产生执行计划 第10页:如何分析执行计划 第11...
·第2步: Parse the Statement 分析语句 ·第3步: Bind Any Variables 绑定...每步的编号反映了在你观察Oracle执行计划时所 示步骤的顺序(如何观察Oracle执行...
ORACLE执行计划和SQL调优_计算机软件及应用_IT/计算机_专业资料。ORACLE 执行...(DBMS_STAT) 什么时候需要分析 通常采用哪种分析方式 第三部分 执行计划 怎么...
如何看懂Oracle执行计划_计算机软件及应用_IT/计算机_专业资料。如何看懂 ORACLE...通过分析上面的执行计划,我们不能说 C 表一定在 B、A 表之后才被读取,事实上...
O次数才是我们应该遵从的真正的指导原则,在后面的具体案例分析中就给出这样的... 怎样看懂Oracle的执行计... 19页 免费 ORACLE执行计划和SQL调优... 71页 ...
ORACLE执行计划_IT/计算机_专业资料。对执行计划不清楚的可以看看此文档1,什么是执行计划 所谓执行计划,顾名思义,就是对一个查询任务,做出一份怎样去完成任务的...
只显示执行计划, 但是与 set autotrace on explain;相比不会执行语句,对于仅仅...通过分析,我们就可以知道 ORACLE 是怎么样连接表,使用什么方 式扫描表(索引扫描...
闽公网安备 35021102001881号 
热门文档