Oracle AWR分析:CPU升高问题解决策略

需积分: 15 6 下载量 192 浏览量 更新于2024-08-15 收藏 648KB PPT 举报
"案例二cpu意外升高-ORACLE AWR数据性能分析" 在这个案例中,客户在将数据库从9.2.0.5版本升级到9.2.0.6后,遭遇了业务高峰期CPU使用率显著升高的问题,升幅超过了30%,导致了明显的CPU瓶颈。此外,应用也进行了小规模的升级,这可能是导致CPU利用率增加的原因之一。在分析性能问题时,通过查看TOP SQL,发现与升级前相比并没有显著变化。 Oracle数据库性能分析是一个复杂的过程,其中,Automatic Workload Repository (AWR) 是一个关键的内置工具。AWR收集数据库的性能数据,并生成详细的报告,帮助识别性能问题。它在10g版本中默认启用,提供HTML格式的易读报告,对系统性能的影响较小,但可能不包含所有统计信息,例如子闩锁统计。 除了AWR,Oracle还提供了Automatic Database Diagnostic Monitor (ADDM),这是10g引入的新工具,能在AWR数据基础上进行分析,给出“finding”来指导优化工作。尽管ADDM非常有用,但它可能忽略一些细节和问题,因此不能仅依赖ADDM进行问题诊断。ADDM应该作为整体优化策略的参考。 Oracle还提供了一系列其他顾问工具,如Memory Advisor、SQL Access Advisor (SAA)、SQL Tuning Advisor (STA)以及11g中新增的数据恢复顾问。这些工具通常内置于Enterprise Manager (EM) 中,支持图形化操作,使得非专业人员也能进行基本的性能优化。 在9i版本中,Statspack是用于性能监控的工具,需要手动开启并定期执行job。而10g及以后的版本,AWR成为了更为主流的选择,提供更多的信息且对性能影响较小。 对于第三方工具,TOAD是一个广受欢迎的选项,虽然它是收费软件,但它集成了开发、调优和监控功能,非常适合DBA使用。 解读AWR报告需要一定的基础知识,包括理解Oracle的等待接口、时间模型以及Oracle Concepts中的相关概念。报告的制作可以通过执行SQL脚本awrrpt.sql或在RAC环境中使用awrrpti.sql来完成。报告头部会包含工作负载信息、统计周期等关键数据,进一步的分析需要对报告中的各项指标有深入的理解。 在分析AWR报告时,有经验的DBA能够更快地定位问题,而新手则需要建立基线,通过比较不同时间段的报告来发现问题。重要的是要区分主要矛盾和次要矛盾,找到影响性能的主要因素,而不是盲目地调整。在发现可疑点后,不应立即采取行动,而是进行充分的验证和分析,以确保所做的优化能够真正解决问题。