如何收集系统最繁忙时段的AWR性能报告

如何收集系统最繁忙时段的AWR性能报告,第1张

同看《Oracle调优鹰眼深入理解AWR性能报告》教视频急切期待第三讲实际第三讲需要结合量原理知识才能充理解 例Latch activity 、Undo、Dynamic Resource Master均需要理解其原理才能充理解 所些AWR环节 Maclean 今 系列调优讲座介绍 于《Oracle调优鹰眼系列》 则增加本附录作全部Oracle AWR指标介绍 本附录于原理理解面内容更侧重于指标含义介绍AWR鹰眼讲座工具文档

觉本AWR解析哪些指标仍理解透彻 或者讲清楚本页留言谢谢家支持

Hawk Eyes 看AWR鹰眼= 基础理论夯实+看500份AWR

啥AWR

=====================================================================================================

AWR (Automatic Workload Repository)

堆历史性能数据放SYSAUX表空间 AWRSYSAUX都10g现Oracle调优关键特性; 约1999左右始发已经15历史

默认快照间隔110g保存7、11g保存8; 通DBMS_WORKLOAD_REPOSITORYMODIFY_SNAPSHOT_SETTINGS修改

DBA_HIST_WR_CONTROL

AWR程序核dbms_workload_repository包

@/rdbms/admin/awrrpt 本实例

@/rdbms/admin/awrrpti RAC选择实例号

我这是一家医院的HIS,装的小型机,unix的系统,最近客户端的用户老是说死机,很是讨厌,所以求教oracle高手多多指教

AWR的数据主要有两部分组成:1)保存在内存中的系统负载和性能统计数据,主要通过v$视图查询 ;2)mmon进程定期以快照(snapshot)的方式将内存中的AWR数据保存到SYSAUX表空间中,主要通过dbA_视图访问。1 AWR快照的生成默认情况下,每隔一小时自动产生一个快照,保存最近7天的信息,可以通过以下语句查询:sql>select SNAP_INTERVAL,RETENTION from dba_hist_wr_control;SNAP_INTERVAL RETENTION----------------------------------------------------------+00000 01:00:000 +00007 00:00:000可以通过以下语句修改时间间隔和保存时间(以分钟为单位):exec dbms_workload_repositorymodify_snapshot_settings(interval => 30, retention = > 102460);也可以根据需要随时手动生成快照:exec dbms_workload_repositorycreate_snapshot;2 AWR报告的生成以sysdba运行如下命令:@/rdbms/admin/awrrptsql3 AWR报告的分析策略因为AWR报告非常长,不可能从头到尾一字不漏的去看,要有选择的去看重点部分。最好能对照的来读,即和系统正常情况下的AWR报告对比,找差异。AWR报告采用总分的形式,前面是系统的整体情况,后面是各个部分细节,一开始不要陷入细节,先分析系统的整体状况,对于后面的专题分析,要根据关注点的不同,采取跳跃式分析。还要根据具体业务的不同,决定某种现象是否正常。系统整体状况方面1)Load Profile:分析系了解系统整体负载状况,如每秒中的事务数/语句数,每秒/每事务物理读写次数(Physical Reads/Writes), 逻辑读写次数(Logical Reads/Writes),sql语句的解析(Parse),特别是硬解析次数等。2)Instance Efficiency Percentages:各指标都应接近100%,除了:execute to parse (70%以上)和parse cpu to parse elapsed。如果不符合,基本可以确定系统存在性能问题;但是如果反过来,即都符合,也不能说明系统完全正常,还要看实际情况。具体状况方面1)Top 5 Timed Events:这里列出消耗时间最多的5个等待事件,每种等待说明,都表示一种原因,如:db file sequential read表示按索引访问出现等待,db file scattered reade表示全表扫描访问出现等待事件。2)Top N sql:根据时间消耗,内存消耗,物理I/O等排序,对相关sql分析执行计划3)如果是rac环境,需要特别关注rac Statistic中的相关指标4)sga pga分析5)分析表空间、数据文件I/O

AWR的数据主要有两部分组成:1)保存在内存中的系统负载和性能统计数据,主要通过v$视查询;

2)mmon进程定期以快照(snapshot)的方式将内存中的AWR数据保存到SYSAUX表空间中,主要通过dbA_视访问。

1AWR快照的生成默认情况下,每隔一小时自动产生一个快照,保存最近7天的信息,可以通过以下语句查询:sql>selectSNAP_INTERVAL,RETENTIONfromdba_hist_wr_control;SNAP_INTERVALRETENTION----------------------------------------------------------+0000001:00:000+0000700:00:000可以通过以下语句修改时间间隔和保存时间(以分钟为单位):execdbms_workload_repositorymodify_snapshot_settings(interval=>30,retention=>102460);

也可以根据需要随时手动生成快照:execdbms_workload_repositorycreate_snapshot;2AWR报告的生成以sysdba运行如下命令:@/rdbms/admin/awrrptsql3AWR报告的分析策略因为AWR报告非常长,不可能从头到尾一字不漏的去看,要有选择的去看重点部分。

最好能对照的来读,即和系统正常情况下的AWR报告对比,找差异。

AWR报告采用总分的形式,前面是系统的整体情况,后面是各个部分细节,一开始不要陷入细节,先分析系统的整体状况,对于后面的专题分析,要根据关注点的不同,采取跳跃式分析。

还要根据具体业务的不同,决定某种现象是否正常。

系统整体状况方面1)LoadProfile:分析系了解系统整体负载状况,如每秒中的事务数/语句数,每秒/每事务物理读写次数(PhysicalReads/Writes),逻辑读写次数(LogicalReads/Writes),sql语句的解析(Parse),特别是硬解析次数等。

2)InstanceEfficiencyPercentages:各指标都应接近100%,除了:executetoparse(70%以上)和parsecputoparseelapsed。

如果不符合,基本可以确定系统存在性能问题;

但是如果反过来,即都符合,也不能说明系统完全正常,还要看实际情况。

具体状况方面1)Top5TimedEvents:这里列出消耗时间最多的5个等待事件,每种等待说明,都表示一种原因,如:dbfilesequentialread表示按索引访问出现等待,dbfilescatteredreade表示全表扫描访问出现等待事件。

2)TopNsql:根据时间消耗,内存消耗,物理I/O等排序,对相关sql分析执行计划3)如果是rac环境,需要特别关注racStatistic中的相关指标4)sgapga分析5)分析表空间、数据文件I/O

awr里面只能初步判断,判断标准包括,执行次数,执行时间等。还要根据报告的等待事件等来确定是否要对sql进行调整。再往下就要自己对sql进行执行计划分析,10046,10053事件的追踪了。

1生成单实例 AWR 报告:@$ORACLE_HOME/rdbms/admin/awrrptsql2生成 Oracle RAC AWR 报告:@$ORACLE_HOME/rdbms/admin/awrgrptsql3生成 RAC 环境中特定数据库实例的 AWR 报告:@$ORACLE_HOME/rdbms/admin/awrrptisql4生成 Oracle RAC 环境中多个数据库实例的 AWR 报告的方法:@$ORACLE_HOME/rdbms/admin/awrgrptisql5生成 SQL 语句的 AWR 报告:@$ORACLE_HOME/rdbms/admin/awrsqrptsql6生成特定数据库实例上某个 SQL 语句的 AWR 报告:@$ORACLE_HOME/rdbms/admin/awrsqrpisql--生成 AWR 时段对比报告7生成单实例 AWR 时段对比报告@$ORACLE_HOME/rdbms/admin/awrddrptsql8生成 Oracle RAC AWR 时段对比报告@$ORACLE_HOME/rdbms/admin/awrgdrptsql9生成特定数据库实例的 AWR 时段对比报告@$ORACLE_HOME/rdbms/admin/awrddrpisql10生成 Oracle RAC 环境下特定(多个)数据库实例的 AWR 时段对比报告@$ORACLE_HOME/rdbms/admin/awrgdrpisql来源: 51cto 作者:Oracle小混子

如何自动生成AWR Report报告/Generate Oracle AWRReport Automaticly

自动生成awrpt的另一种实现。

总所周知可以用DBMS_WORKLOAD_REPOSITORYAWR_REPORT_TEXT或者

DBMS_WORKLOAD_REPOSITORYAWR_REPORT_HTML来自动生成report报表。

但该方法使用起来并不是特别方便。

下面是另一种方法的实现,主要用shell 命令,在bash下通过测试。

(

生成格式html/text。

显示1天的snap。

生成SNAP间隔可以根据需要自定义。当前取的是最后两次。

)

AWR_FORMAT=html

NUM_DAYS=1

MAX_SNAP_ID=`sqlplus -S / as sysdba << EOF

set heading off trimspool on feedback off

SELECT trim(max(SNAP_ID)) FROM DBA_HIST_SNAPSHOT;

EOF`

MIN_SNAP_ID=`expr $MAX_SNAP_ID - 1`

AWR_LOG=/tmp/AWR_shahand_`date '+%Y%m%d_%H%M'`html

echo -e "$AWR_FORMAT\n$NUM_DAYS\n$MIN_SNAP_ID$MAX_SNAP_ID\n$AWR_LOG\n"|(sqlplus -S / as sysdba @/rdbms/admin/awrrptsql) > /dev/null

如何生成Oracle AWR报告

oracle手工生成AWR报告方法记录

AWR(Automatic Workload Repository)报告是DBA进行日常数据库性能评定、问题SQL发现的重要手段。熟练掌握AWR报告,是做好开发、运维DBA工作的重要基本功。

1生成单实例

awr

报告:

@$oracle_home/rdbms/admin/awrrptsql

2生成

oracle

rac

awr

报告:

@$oracle_home/rdbms/admin/awrgrptsql

3生成

rac

环境中特定数据库实例的

awr

报告:

@$oracle_home/rdbms/admin/awrrptisql

4生成

oracle

rac

环境中多个数据库实例的

awr

报告的方法:

@$oracle_home/rdbms/admin/awrgrptisql

5生成

sql

语句的

awr

报告:

@$oracle_home/rdbms/admin/awrsqrptsql

6生成特定数据库实例上某个

sql

语句的

awr

报告:

@$oracle_home/rdbms/admin/awrsqrpisql

--生成

awr

时段对比报告

7生成单实例

awr

时段对比报告

@$oracle_home/rdbms/admin/awrddrptsql

9生成

oracle

rac

awr

时段对比报告

@$oracle_home/rdbms/admin/awrgdrptsql

10生成特定数据库实例的

awr

时段对比报告

11生成

oracle

rac

环境下特定(多个)数据库实例的

awr

时段对比报告

以上就是关于如何收集系统最繁忙时段的AWR性能报告全部的内容,包括:如何收集系统最繁忙时段的AWR性能报告、如何每天从awr抓取top sql、如何从awr中分析硬解析较高的语句等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/10129881.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存