一、前言:AWR报告是了解Oracle运行的一个重要报告,CPU的使用情况是AWR报告的一个重要指标,本文档从单个CPU的维度去解读AWR报告;
二、重要参数介绍:
DB Time:Amount of elapsed time (in microseconds) spent performing Database user-level calls. This does not include the elapsed time spent on instance background processes such as PMON.
说明:DB TIME= 所有前台session花费在database调用上的总和时间
?注意是前台进程foreground sessions
?包括CPU时间、IO Time、和其他一系列非空闲等待时间,别忘了cpu on queue time
公式:DB TIME= DB CPU + Non-Idle Wait + Wait on CPU queue
(思考DB TIME的定义为市民指定的是前台session)
DB CPU:Amount of CPU time (in microseconds) spent on database user-level calls. This does not include the CPU time spent on instance background processes such as PMON.
说明:简单的理解为数据库在运行时消耗的CPU的情况;
三、检查数据库的负载情况
例一:
数据库运行了60分钟,操作系统有16个CPU,总共的DB TIME:60×16=960分钟;
CPU花费了233.57分钟在处理Oralce非空闲等待和运算上,也就是说CPU有 233.57/960*100% =24.3%,
例二:
数据库运行了60分钟,操作系统4个CPU,总共DB TIME:60×8=480分钟;
CPU花费了0.62分钟在处理Oralce非空闲等待和运算上,也就是说CPU有 0.62/480*100% =0.13%,
总结:很显然从DB Time、Elapsed、CPUs可以初步的看出数据库的负载情况;
四、检查数据库的CPU负载情况
例一:
DB CPU(S)表明:数据库每次运行时在DB CPU上面的消耗情况,上面DB CPU/DB Time=97.5%(因为小数点的关系,该值会有误差)
详细的CPU的繁忙程度需要查看Instance CPU的%Busy CPU,当前为99.2%;
例二:
根据上面的计算可以知道这个系统的CPU负载也很轻松;