Oracle的优化器的RBO和CBO方式
方式。
4、设定选用哪种优化模式:
A、在initSID.ora中设定OPTIMIZER_MODE=RULE/CHOOSE/FIRST_ROWS/ALL_ROWS(默认是Choose)
B、Sessions级别通过:ALTER SESSION SET OPTIMIZER_MODE=RULE/CHOOSE/FIRST_ROWS/ALL_ROWS
C、语句级别用Hint(/*+ ... */)来设定
5、一些常见的问题:
A、为什么表的某个字段明明有索引,但执行计划却不走索引?
1、优化模式是all_rows的方式
2、表作过analyze,有统计信息
3、表很小,上文提到过的,Oracle的优化器认为不值得走索引。
B、使用CBO时,SQL语句中为什么不能引用系统数据字典表或视图?
1、因为系统数据字典表都未被分析过,可能导致极差的“执行计划”。
2、擅自对数据字典表做分析,可能导致死锁,或系统性能严重下降。
C、使用CBO时如何选择表连接方式?
1、CBO有时会偏重于SMJ和HJ,但在OLTP系统中,NL一般会更好,因为它高效的使用了索引。
2、SMJ即使相关列上建有索引,最多只能因索引的存在,避免数据排序过程。
3、HJ由于须做HASH运算,索引的存在对数据查询速度几乎没有影响。
D、使用CBO时,需要注意什么吗?
1、必须保证为表和相关的索引搜集足够的统计数据, 对数据经常有增、删、改的表最好定期对表和索引进行分析
2、可用SQL语句:analyze table xxx compute statistics for all indexes
E、为什么有时使用CBO会比较慢?
1、没有对表或视图进行Analyze
2、SQL进行CBO时对于没有Analyze的对象会自动进行Analyze,因此造成运行缓慢
详介oracle 的 RBO/CBO 优化器 Oracle 的优化器有两种优化方式,即基于规则的优化方式(Rule-Based Optimization, 简称为 RBO)和基于代价的优化方式(Cost-Based ...
Oracle的优化器-RBO、CBO及其变迁_IT/计算机_专业资料。ORACLE 提供了CBO、RBO两种SQL优化器。CBO在ORACLE7 引入,但在ORACLE8i 中才成熟。ORACLE 已经明确声明在ORAC...
Oracle的优化器:RBO/CBO,RULE/CHOOSE/FIRST_ROWS/ALL_ROWS名词解释 Oracle的优化器有两种优化方式,即基于规则的优化方式(Rule-Based Optimization,简称为 RBO)和...
oracle cbo rbo 详解 Oracle 2010-11-01 19:50:35 阅读 65 评论 1 字号:大中小 订阅 中 转载 ORACLE 提供了 CBO、 RBO 两种 SQL 优化器。 CBO 在 ...
Oracle CBO 与 RBOOracle CBO 与 RBO Oracle的优化器有两种优化方式:基于规则的优化方式:Rule-BasedOptimization(RBO)基于成本或者统计信息的优化方式(Cost-Based...
oracle CBO RBO SQL优化器oracle CBO RBO SQL优化器隐藏>> oracle CBO RBO SQL 优化器 ORACLE 提供了 CBO、 RBO 两种 SQL 优化器。 CBO 在 ORACLE7 引入, ...
描述Oracle优化器的功能 ? 分辨RBO和CBO的不同 ? 确认RBO和CBO的使用环境 ? ..._mode = {choose rule first_rows all_rows} First_rows优化方法 ?...
Oracle 优化器介绍本文讲述了 Oracle 优化器的概念、工作原理和使用方法,兼顾了...RBO 优化器 RBO 是一种基于规则的优化器,随着 CBO 优化器的逐步发展和完善,...
RBO From Begin->Oracle10g开始退出历史舞 台 CBO From Oracle7(1992)--->Oracle10g主 要支持的优化器 Copyright 2004(eygle)版权所有 The Different! Copyright...
CBO 和 RBO_IT/计算机_专业资料。CBO 和 RBO1、 基于规则的优化方式(Rule-Based Optimization,简称为RBO) 优化器在分析SQL语句时,所遵循的是 Oracle内部预定的一...
热门文档