同看《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中分析硬解析较高的语句等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)