Oracle数据库性能优化方法论和最佳实践
上QQ阅读APP看书,第一时间看更新

1.4.3 运行过程中突然变慢的系统优化

在Oracle中,除了系统bug外,没有无缘无故的性能问题。即使是Oracle bug,也是因为变化引起了bug而被触发。对这类问题的优化相对比较简单,只要简单检测突然变化即可。即使不知道为什么,只要把变化恢复原状,一般业务系统就可以恢复。当然,对于这类业务系统的性能故障,用户的紧迫度也往往比较高。

应急性性能优化是日常运行中针对业务系统的最为常见的优化工作,类似于故障处理场景。由于OWI方法所具有的实时针对性,所以它在这类优化中被广泛利用,并且效果良好。只要日常收集关键指标及版本变化,通常都能较为快速地完成应急性优化。

从变化的角度来看,一般存在以下几种情况。

❑ 新的业务模块上线或进行了补丁修复。

❑ SQL语句执行计划发生变化。

❑ DDL操作导致SQL依赖对象发生变化。

❑ 意外的配置变化。

❑ 依赖资源发生故障或性能降低,导致吞吐量下跌。

❑ 执行了某个意外操作。

❑ 某关键进程挂住或死掉。