Oracle 在执行SQL语句时,有两种优化方法:即基于规则的RBO和基于代价的CBO。 在SQL执教的时候,到底采用何种优化方法,就由Oracle参数 optimizer_mode 来决定。Rule Based Optimizer(RBO)基于规则
Cost Based Optimizer(CBO)基于成本,或者讲统计信息
SQL> show parameter optimizer_mode;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
optimizer_mode stringALL_ROWS
oracle10g开始默认是all_rows
ALL_ROWS不管是不是有统计信息,全部采用基于成本的优化方法,返回最大数的量数据FIRST_ROWS_n不管是不是有统计信息,全部采用基于成本的优化方法并以最快的速度,返回前N行记录FIRST_ROWS使用成本和试探法相结合的方法,查找一种可以最快返回前面少数行的方法第一个是返回所有行的最小代价,第二个是返回前N行的最小代价,最后一个是返回前面的少量行的最好计划修改全局
alter system set optimizer_mode=all_rows;修改当前sessionalter session set optimizer_mode=all_rows;Oracle RAC升级到10.2.0.4问题记录 root102.sh不能运行Oracle协议适配器错误解决办法相关资讯 Oracle数据库 Oracle入门教程 oracle数据库教程
- Oracle数据库全球化 (03月01日)
- Oracle数据库日期过滤方法性能比较 (02/02/2015 13:20:26)
- Oracle数据库安装中端口被占用问题 (10/29/2014 07:42:24)
| - 在CentOS 6.6上搭建C++运行环境并 (10/10/2015 19:44:40)
- Oracle数据库无法使用localhost和 (11/14/2014 16:39:10)
- 使用SQLT来构建Oracle测试用例 (08/28/2014 06:17:41)
|
本文评论 查看全部评论 (0)