因為AWR報告非常長
不可能從頭到尾一字不漏的去看
要有選擇的去看重點部分
最好能對照的來讀
即和系統正常情況下的AWR報告對比
找差異
以下就是對分析AWR報告的方法進行了介紹
需要的朋友參考下
AWR的數據主要有兩部分組成
)保存在內存中的系統負載和性能統計數據主要通過v$視圖查詢
)mmon進程定期以快照(snapshot)的方式將內存中的AWR數據保存到SYSAUX表空間中主要通過DBA_*視圖訪問
AWR快照的生成
默認情況下每隔一小時自動產生一個快照保存最近天的信息可以通過以下語句查詢
SQL>select SNAP_INTERVALRETENTION from dba_hist_wr_control;
SNAP_INTERVAL RETENTION
+ :: + ::
可以通過以下語句修改時間間隔和保存時間(以分鐘為單位)
exec dbms_workload_repositorymodify_snapshot_settings(interval => retention = > **);
也可以根據需要隨時手動生成快照
exec dbms_workload_repositorycreate_snapshot;
AWR報告的生成
以sysdba運行如下命令
@?/rdbms/admin/awrrptsql
AWR報告的分析
策略
因為AWR報告非常長不可能從頭到尾一字不漏的去看要有選擇的去看重點部分最好能對照的來讀即和系統正常情況下的AWR報告對比找差異
AWR報告采用總分的形式前面是系統的整體情況後面是各個部分細節一開始不要陷入細節先分析系統的整體狀況對於後面的專題分析要根據關注點的不同采取跳躍式分析
還要根據具體業務的不同決定某種現象是否正常
系統整體狀況方面
)Load Profile分析系
了解系統整體負載狀況如每秒中的事務數/語句數每秒/每事務物理讀寫次數(Physical Reads/Writes) 邏輯讀寫次數(Logical Reads/Writes)SQL語句的解析(Parse)特別是硬解析次數等
)Instance Efficiency Percentages各指標都應接近%除了execute to parse (%以上)和parse cpu to parse elapsed如果不符合基本可以確定系統存在性能問題但是如果反過來即都符合也不能說明系統完全正常還要看實際情況
具體狀況方面
)Top Timed Events這裡列出消耗時間最多的個等待事件每種等待說明都表示一種原因如db file sequential read表示按索引訪問出現等待db file scattered reade表示全表掃描訪問出現等待事件
)Top N SQL根據時間消耗內存消耗物理I/O等排序對相關SQL分析執行計劃
)如果是RAC環境需要特別關注RAC Statistic中的相關指標
)SGA PGA分析
)分析表空間數據文件I/O
From:http://tw.wingwit.com/Article/program/Oracle/201311/19019.html