oracle笔记整理14——性能调优之oracle执行计划

本文详细介绍了Oracle数据库的优化器(optimizer),包括基于规则的RBO和基于成本的CBO,以及不同的优化模式。重点讲解了执行计划管理,如如何在SQL Plus中开启执行计划,并分析了为何有时候索引未被使用的原因。此外,还提供了统计信息和动态分析的重要性,以帮助用户了解CBO的工作原理。
摘要由CSDN通过智能技术生成

1) 优化器(optimizer)

a) RBO(rule-based optimizer)方式:基于规划的优化方式
所遵循的是oracle内部预定的一些规则.

b) CBO(cost-based optimizer)方式:看语句的执行代价(cost),这里的代价主要指cpu和内存。
优化器在判断是否用这种方式时,主要参照的是表及索引的统计信息。

2) 优化模式

a) rule:基于规则的方式

b) choose:默认使用方式,有统计信息,采用CBO,无统计信息,采用RBO.

c) first rows:有统计信息,以最快的时间返回最先几行,通常为NL连接方式。

d) all rows:即cost方式,有统计信息,以最快的方式返回表的所有行,无统计信息,才用RBO;

e) 更新统计信息

表:  analyze table table_name compute statistics
索引:analyze index index_name estimate statistics

f) 有时候明明有索引但是执行计划没有走索引,原因有二,第一:表或索引的统计信息缺失或过时;第二:表太小,oracle认为不值得走索引。

3) 执行计划管理

优化器会维护所有执行次数超过一次的sql语句的每个执行计划的历史列

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值