首页 > 其他分享 >AWR报告参数DB TIME和DB CPU分析

AWR报告参数DB TIME和DB CPU分析

时间:2023-05-31 15:14:27浏览次数:51  
标签:数据库 TIME DB AWR time CPU

什么是AWR?

ASH(Active Session History,活动会话历史信息)、AWR(Automatic Workload Repository,自动负载信息库)、ADDM(Automatic Database Diagnostic Monitor,数据库自动诊断监视工具)是Oracle性能调整的三把利剑,需要深入地了解,但是面试一般都问得比较简单,主要问到的是AWR。

Oracle性能调整最重要的就是对最影响性能的SQL的调整。在一个应用中,能够影响到数据库的只有SQL,也只能是SQL。系统不能一味地依靠增强硬件、修改系统、数据库参数来提高数据库的性能,更多的应该关注那些最影响性能的SQL语句。ASH报告、AWR报告和ADDM报告都是能够找出影响性能SQL的工具。在分析ASH报告、AWR报告和ADDM报告的时候,最重要的工作就是找出对性能影响最大的SQL语句,并对其进行优化。

AWR(Automatic Workload Repository,自动负载信息库)是Oracle 10g引入的一个重要组件。在AWR里面存储着近一段时间内(Oracle 10g默认是7天,Oracle 11g及其之后的版本默认是8天)数据库活动状态的详细信息。

AWR报告是对AWR视图进行查询而得到的一份自动生成的报告,它用于显示两个快照或者两个时间点之间捕捉到的数据。AWR报告其实就是一张数据库健康体检表,它显示了数据库健康的各项指标。通过AWR报告,DBA可以容易地获知数据库最近的活动状态,数据库的各种性能指标的变化趋势曲线,数据库最近可能存在的异常,分析数据库可能存在的性能瓶颈,从而对数据库进行优化。AWR使用几个表来存储采集的统计数据,所有的表都存储在新的名称为SYSAUX的特定表空间中的SYS模式下,并且以WRM$*和WRH$的格式命名。前一种类型存储元数据信息(如检查的数据库和采集的快照),后一种类型保存实际采集的统计数据。H代表“历史数据(Historical)”,M代表“元数据(Metadata)”。在这些表上构建了几种带前缀DBA_HIST_的视图,这些视图可以用来编写自己的性能诊断工具。视图的名称直接与表相关;例如,视图DBA_HIST_SYSMETRIC_SUMMARY是在WRH$_SYSMETRIC_SUMMARY表上构建的。AWR报告所有的数据来源于AWR视图,即以DBA_HIST_开头的所有系统表。

输出AWR报告

sys登录状态下,使用如下脚本进行

1.当前连接实例的AWR报告提取:@?/rdbms/admin/awrrpt.sql
2.RAC的其他实例AWR报告提取:@?/rdbms/admin/awrrpti.sql

AWR的重要参数

DB TIME 和 DB CPU

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的情况;
db cpu,只包含了用户进程消耗的cpu time,不包含后台进程消耗的cpu time。我们一般关心的是cpu time,并不关心db cpu

使用DB TIME 和 DB CPU进行负载检查

例一:
数据库运行了60分钟,操作系统有16个CPU,总共的DB TIME:60×16=960分钟;

CPU花费了233.57分钟在处理Oralce非空闲等待和运算上,也就是说CPU有 233.57/960*100% =24.3%

例二:

DB CPU(S)表明:数据库每次运行时在DB CPU上面的消耗情况,上面DB CPU/DB Time=97.5%(因为小数点的关系,该值会有误差)

详细的CPU的繁忙程度需要查看Instance CPU的%Busy CPU,当前为99.2%;

转自https://m.yisu.com/zixun/260096.html

标签:数据库,TIME,DB,AWR,time,CPU
From: https://www.cnblogs.com/AllenWongFly/p/17446166.html

相关文章

  • bitsandbytes通过源码安装后调用报错AttributeError: module 'bitsandbytes.nn' has n
    通过github下载的源码使用pipinstall-e.方式安装的时候会出现题目中的问题。这个时候先卸载掉bitsandbytes,然后重新使用pipinstallbitsandbytes安装,这种方式直接从仓库中安装,问题就解决了。目前尚不清楚问题出现原因,虽然两种方式的安装版本都是0.38.1......
  • JDK 8 新时间 DateTimeFormatter
         ......
  • JDK 8 新时间Zoneld、ZonedDateTime
         ......
  • 可配置Modbus网关 嵌入式设备联网解决方案
    ​ 1.概述可配置Modbus网关可以预先配置ModbusRTU端的设备的地址、功能码和寄存器列表,并存储到网关内部。网关会自动采集这些配置的RTU设备的数据,然后映射到连续的ModbusTCP寄存器地址,从而允许ModbusTCP端一次性读取所有的设备的不同寄存器的数据。它的这种地址映射功能是对......
  • tidb单机部署
    环境:OS:Centos7DB:v6.5.2 1.下载安装介质https://cn.pingcap.com/product-community/选择相应的版本下载 2.创建用户tidb用户[root@pxc04/]#groupaddtidb[root@pxc04/]#useradd-gtidb-Gtidb-s/bin/bashtidb 3.解压[root@localhosttidb]#tar-xvftidb-co......
  • JDK 8 新时间LocalDate、LocalTime、LocalDateTime
            ......
  • node连接mongodb
    主要试用了两个库:mongodb、mongoose由于服务器使用的是比较老版本的mongodb,如果使用比较新的客户端,编译时会出现问题:Serveratxxxx:27017reportsmaximumwireversion4,butthisversionoftheNode.jsDriverrequiresatleast6(MongoDB3.6)终级解决方案:去掉类型constm......
  • MODBUS和RS485说明
    传输格式为帧格式一般1号位为起始位为低电压10号位为停止位--高电压波特率模拟线路信号的速率,也称调制速率,以波形每秒的振荡数来衡量。在信息传输通道中,携带数据信息的信号单元叫码元,每秒钟通过信道传输的码元数称为码元传输速率,简称波特率。波特率通常单位是bit/s,也......
  • java modbus_rtu串口通讯
    基于modbus和串口通讯的Java分享本文推荐一个简单好用java实现基于modbus—rtu协议通讯方法:如果采用非标准modbus协议通讯,可以查看我的这篇博文:java实现串口通讯关于modbus的java开源库主要有以下四种:Jamod:JavaModbus实现:JavaModbus库。该库由DieterWimberger实施。Mod......
  • Sandboxie
    Sandboxie6.7分安全认证适合当前系统发布时间:2021-11-11大小:2.62MB版本:5.53.3.0支持系统:Win7/Win8/Win8.1/Win10/win11位数:64普通下载高速下载PreviousNext123  软件简介Sandboxie允许你在沙盘环境中运行浏览器或其他程序,因此运行所产生的变化可以随后删除,可用来消除上网、运......