Oracle数据库性能优化-优化案例分析总结V1

1 数据库性能sql优化策略

  1. **驱动表选择是否正确。
  2. 使用索引不合理导致产生大量的逻辑读取**(cpu消耗殆尽)**
  3. 是否可以创建索引,避免全表扫描。
  4. 是否可以改写语句或者业务。(not in 到not exists的改写,列为非空)
  5. 结合各个过滤条件,生成结果集最小的作为驱动,优先执行。

6 max()与min()改写。原始sql SELECT MAX(OBJECT_ID),MIN(OBJECT_ID) FROM T1;
进程如下改写。 select (select MAX(OBJECT_ID) from t1),(select min(OBJECT_ID)
from t1) from dual;

  1. 尽量较少filter条件。减少过滤。**
  2. 大量的行迁移和行链接导致的单块读取(db file sequential read)
    3.优化null列,创建2种方法,1 create index idx1 on T(nvl(id,1)), create index
    idx1 on T(id,1),
  3. 标量子查询优化,(连接列需要存在高效索引
  4. 使用crontab手动方式自动采集变量较大表的统计信息。*
  5. 减少表的访问次数,标量子查询修改为左右连接的方式访问。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值