Oracle-AWR性能报告解读

简介: Oracle-AWR性能报告解读

概述

关于如何获取awr以及两个时间段的awr比对报告请参考如下博文

Oracle-使用awrrpt.sql生成AWR报告

Oracle-awrddrpt.sql比较两个AWR差异报告


AWR

手动执行一个快照

Exec dbms_workload_repository.create_snapshot;

创建一个AWR 基线

Exec
DBMS_WORKLOAD_REPOSITORY.CREATE_BASELINE(start_snap_id,end_snap_id ,baseline_name);

数据从哪里来,放哪里去


参数设置

请访问

Oracle-AWR管理包
DBMS_WORKLOAD_REPOSITORY.MODIFY_SNAPSHOT_SETTINGS


对应进程

若是mmon若hang则意味着AWR不可用

AWR主要是MMON(Manageability Monitor Process)和它的小工进程(m00x)

MMON的功能包括:

  • 1.启动slave进程m00x去做AWR快照
  • 2.当某个度量阀值被超过时发出alert告警
  • 3.为最近改变过的SQL对象捕获指标信息

其他脚本

使用@?/rdbms/admin/awrddrpt可以生成AWR比对报告

使用@?/rdbms/admin/awrgrpt可以生成RAC 全局AWR报告

使用@?/rdbms/admin/ashrpt.sql可以生成ASH报告

单实例下使用@/rdbms/admin/addmrpt.sql可以生成addm自诊断报告

RAC环境下生成指定实例的addm报告使用addmrpti.sql脚本

Oracle10g中推出了新的优化诊断工具:数据库自动诊断监视工具(Automatic Database Diagnostic Monitor :ADDM)和SQL优化建议工具(SQL Tuning Advisor: STA)。这两个工具的结合使用,能使DBA节省大量优化时间,也大大减少了系统宕机的危险。简单点说,ADDM就是收集相关的统计数据到自动工作量知识库(Automatic Workload Repository :AWR)中,而STA则根据这些数据,给出优化建议。


报告解读

我们获取了2018-03-30 0点到01点的AWR报告。我们来逐段分析下

数据库基本信息

第一行展示了数据库本身相关的信息:DB Name, DB Id , Instance Name, 数据库启动时间,以及版本和是否为RAC模式,没什么可多说的,很直观

第二行展示了数据库主机相关的信息:HostName,操作系统、CPU数量、内核数量、CPU Sockets和内存

http://kodango.com/cpu-topology

如果你只知道CPU这么一个概念,那么是无法理解CPU的拓扑的。事实上,在NUMA架构下,CPU的概念从大到小依次是:Node、Socket、Core、Processor。

随着多核技术的发展,我们将多个CPU封装在一起,这个封装一般被称为Socket(插槽的意思,也有人称之为Packet,不知到哪个更加准确?),而Socket中的每个核心被称为Core。为了进一步提升CPU的处理能力,Intel又引入了HT(Hyper-Threading,超线程)的技术,一个Core打开HT之后,在OS看来就是两个核,当然这个核是逻辑上的概念,所以也被称为Logical Processor,本文简称为Processor。

综上所述,一个NUMA Node可以有一个或者多个Socket,一个多核Socket显然包含多个Core,一个Core如果打开HT则变成两个Logical Processor。Logical processor只是OS内部看到的,实际上两个Processor还是位于同一个Core上,所以频繁的调度仍可能导致资源竞争,影响性能。

该图引用至http://fishcried.com/2015-01-09/cpu_topology/

第三行展示了快照时间内的数据库统计信息,很重要

包括Sessions 总数 ,Cursors/Session:平均每个session打开了多少cursor

Elapsed 逝去时间、DBTime,超级重要的指标

Elapsed 快照逝去时间,如果为了诊断特定时段性能问题则不宜过长,一般15 分钟~2 、3 个小时。如果是看全天负载那么可以长一些。较为常见是60分钟或者120分钟,根据实际需求,无标准。

Cursors/session : open_cursors 如果设置的不合理会引起ORA-01000: maximum open cursors exceeded问题


相关文章
|
Oracle 关系型数据库 数据库
Oracle 11G常见性能诊断报告(AWR/ADDM/ASH)收集
Oracle 11G常见性能诊断报告(AWR/ADDM/ASH)收集
320 0
|
存储 Oracle 关系型数据库
9-3 Oracle数据字典和动态性能视图介绍
9-3 Oracle数据字典和动态性能视图介绍
161 1
|
1月前
|
SQL Oracle 关系型数据库
Oracle SQL:了解执行计划和性能调优
Oracle SQL:了解执行计划和性能调优
52 1
|
3月前
|
监控 Oracle 关系型数据库
"深度剖析:Oracle SGA大小调整策略——从组件解析到动态优化,打造高效数据库性能"
【8月更文挑战第9天】在Oracle数据库性能优化中,系统全局区(SGA)的大小调整至关重要。SGA作为一组共享内存区域,直接影响数据库处理能力和响应速度。本文通过问答形式介绍SGA调整策略:包括SGA的组成(如数据缓冲区、共享池等),如何根据负载与物理内存确定初始大小,手动调整SGA的方法(如使用`ALTER SYSTEM`命令),以及利用自动内存管理(AMM)特性实现智能调整。调整过程中需注意监控与测试,确保稳定性和性能。
292 2
|
4月前
|
SQL Oracle 关系型数据库
关系型数据库Oracle性能问题
【7月更文挑战第15天】
44 4
|
4月前
|
SQL 缓存 Oracle
关系型数据库Oracle性能问题
【7月更文挑战第16天】
62 2
|
4月前
|
存储 缓存 Oracle
Oracle数据库可扩展性和性能
【7月更文挑战第6天】
83 7
|
6月前
|
SQL Oracle 关系型数据库
Oracle-动态性能视图解读
Oracle-动态性能视图解读
154 0
|
存储 SQL 负载均衡
达梦数据库与Oracle数据库:功能、性能和适用场景对比
数据库在现代信息技术领域中扮演着至关重要的角色。在企业级应用中,选择正确的数据库管理系统对于数据存储、处理和查询效率至关重要。本文将对比两个备受关注的数据库管理系统——达梦数据库和Oracle数据库,从功能、性能和适用场景等方面进行深入探讨,以帮助读者在选择合适数据库时做出明智的决策。
2799 1