在Oracle AWR报告中,%Busy CPU指标的含义是:表示该实例使用的CPU占总的被使用CPU的比例 。以下是关键分析:
1. 指标定义
- %Busy CPU的计算公式为: %Busy CPU=Total Busy CPU TimeDB CPU+Background CPU Time×100% 其中:
- DB CPU:前台进程消耗的CPU时间;
- Background CPU Time:后台进程消耗的CPU时间;
- Total Busy CPU Time:系统中所有被使用的CPU时间(即非空闲状态的CPU总和)
2. 与%Total CPU的区别
- %Total CPU(选项C)表示实例消耗的CPU占**系统总CPU资源(包括空闲CPU)**的比例。例如,若系统有4个逻辑CPU,其中3个被使用(1个由实例占用),则:
- %Total CPU = 1/4 = 25%;
- %Busy CPU = 1/3 ≈ 33%
- %Busy CPU更关注实例在实际被使用的CPU资源中的占比,而非整个系统的总CPU资源。这有助于判断高负载时CPU瓶颈是否由本实例引起
3. 错误选项分析
- 选项A(表示实例还能使用的CPU比例):与定义无关,且AWR中无此类指标。
- 选项C(实例使用的CPU占总CPU比例):对应的是**%Total CPU**,而非%Busy CPU
4. 应用场景
- 当系统整体CPU使用率较高时,通过**%Busy CPU**可快速判断实例是否为主要消耗者。例如:
- 若**%Busy CPU = 90%**,说明实例占用了大部分被使用的CPU资源;
- 若**%Busy CPU = 30%**,则高负载可能由其他程序(如操作系统或其他应用)导致
示例分析:
- Load Profile中,发现**%Total CPU = 90%,%Busy CPU = 80%**,说明实例是CPU的主要消耗者。
- Instance Efficiency Percentages中,DB CPU = 70%,说明前台SQL操作消耗了大量CPU。
- Top CPU Consuming SQL中,发现一条SQL的CPU Time = 1000s,Executions = 100,CPU per Execution = 10s,需优化该SQL。
- Top 10 Foreground Events中,发现CPU used by this session = 500s,说明会话消耗了大量CPU。
- Operating System Statistics中,发现User % = 85%,System % = 10%,说明CPU主要被用户进程消耗。
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




