oracle效能調憂工具AWR,ASH,ADDM
一.ASH(Active Session History)活動會話歷史記錄
ASH以V$SESSION為基礎,每秒取樣一次記錄活動會話等待的事件,不活動的會話不會取樣,取樣工作由新引入的後臺程式MMNL來完成。ASH buffers 的最小值為1MB,最大值不超過30MBm,記憶體中記錄資料,期望值是記錄一小時的內容。
[oracle@ogg2 ~]$ cd /u01/app/oracle/product/11.2.0/dbhome_1/rdbms/admin/
[oracle@ogg2 admin]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.3.0 Production on Thu Apr 11 15:17:03 2019
Copyright (c) 1982, 2011, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> @ ashrpt.sql --使用sql生成報告
End of Report
Report written to ashrpt_1_0411_1517.txt
SQL> exit
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
[oracle@ogg2 admin]$ vim ashrpt_1_0411_1517.txt --檢視內容
二.ADDM(Automatic Database Diagnostic Monitor)自動資料庫診斷監視器
ADDM是Oracle內部的一個顧問系統,能夠自動的完成最資料庫的一些最佳化的建議,給出SQL的最佳化,索引的建立,統計量的收集等建議。
[oracle@ogg2 admin]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.3.0 Production on Thu Apr 11 15:23:12 2019
Copyright (c) 1982, 2011, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> @ addmrpt.sql
End of Report
Report written to addmrpt_1_10660_10723.txt
SQL> exit
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
[oracle@ogg2 admin]$ vim addmrpt_1_10660_10723.txt
三.AWR(Automatic Workload Repository)自動工作負載資訊庫
AWR報告生成時間是Oracle啟動到關閉中間,資料庫重啟後會影響AWR報告連續性。Oracle 11.2.0.3有個bug是AWR報告不能以html格式輸出,可以輸出text格式。
[oracle@ogg2 admin]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.3.0 Production on Thu Apr 11 15:23:12 2019
Copyright (c) 1982, 2011, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> select snap_interval, retention from dba_hist_wr_control; --查詢awr設定
SNAP_INTERVAL RETENTION
---------------------------------------------------------------------------
+00000 01:00:00.0 +00008 00:00:00.0
SQL> @ awrrpt.sql
End of Report
Report written to awrrpt_1_10692_10723.txt
SQL> exit
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
[oracle@ogg2 admin]$
四.找出資料庫正在執行的慢SQL
找出正在執行時的慢SQL語句可以透過v$session+v$sqlarea檢視。如果在一個小時以內發生的我們可以透過生成ASH報告來找出SQL。如果是1小時以上或幾天我們可以透過AWR報告來找出最影響系統的SQL語句。ADDM報告基於AWR庫,預設可以儲存30天的ADDM報告。
SQL> select sql_id,SQL_FULLTEXT,disk_reads from v$sqlarea order by disk_reads; --查出最耗磁碟IO的sql語句
575n0h472axp5 DECLARE job BINARY_INTEGER := :job; next_date TIMESTAMP WITH TIME ZONE := :myda 26071305
8rkkvsws8j7mc SELECT DISTINCT MAX("A1"."END_DATE"),"A1"."DATA_SOUR" FROM "UPINFO"."HK_SZ_SAMP_ 32066026
c5qwm85rqx158 DECLARE job BINARY_INTEGER := :job; next_date TIMESTAMP WITH TIME ZONE := :myda 33885567
b5cbrvz8a2uhb SELECT LINE_ID, PUBLISH_DATE, TITLE, URL, AFFIX_NAME, AFFIX_PATH, ORIG_CLASS, UP 38591289
d2xrh5ata01ah SELECT URL, LINE_ID, PUBLISH_DATE, TITLE, AFFIX_PATH, AFFIX_NAME, UPDATETIME FRO 43511414
0hzc203fng3t4 begin upmain.PR_STK_SEC_TRADE_INFO(:a,:b); end; 45662039
5nrvy4cqq3aq8 SELECT "ISVALID","TRADE_DATE","MKT_CLS_PAR","SEC_UNI_CODE","SELL_BALANCE_VOL" FR130555461
74ju8jvk9k70t DECLARE job BINARY_INTEGER := :job; next_date TIMESTAMP WITH TIME ZONE := :myda253372505
56293grsrhapw begin upmain.PR_PUB_ORG_INFO(:a,:b); end; 270812668
8mp3aausbm77c MERGE INTO UPMAIN.PUB_ORG_INFO T USING( SELECT DISTINCT ORG_UNI_CODE ,GEN_MAN FR 1062109712
5842 rows selected.
SQL> select distinct USER_ID from dba_hist_active_sess_history where sql_id='8mp3aausbm77c'; --根據sql_id查sql
USER_ID
----------
85
SQL> select user_id,username from dba_users where user_id=85; --找使用者
USER_ID USERNAME
---------- ------------------------------
85 UPMAIN
SQL>
相關檢視:
v$sqlarea --sql語句
v$session --當前正在發生的會話
v$session_wait --當前正在發生的等待會話
v$session_wait_history --會話最近的10次等待事件
v$active_session_history --記憶體中的ASH採集資訊,理論為1小時
wrh$_active_session_history --寫入AWR庫中的ASH資訊,理論為1小時以上
dba_hist_active_sess_history --根據wrh$_active_session_history生成的檢視
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25854343/viewspace-1648328/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle效能調整的三把利劍--ASH,AWR,ADDMOracle
- statspack、awr、addm,ash影片分享
- AWR、ASH、ADDM和顧問程式
- ASH、AWR、ADDM區別聯絡
- statspack、awr、addm,ash視訊分享
- oracle awr ashOracle
- Oracle AWR與ASH效能報告深入解析Oracle
- ORACLE AWR效能報告和ASH效能報告的解讀Oracle
- 學用ORACLE AWR和ASH特性(1)-ASH和AWR的故事Oracle
- Oracle10g ASH and AWROracle
- Oracle 10g,AWR,AWR,ADDM最佳實踐Oracle 10g
- 學用ORACLE AWR和ASH特性(8)-生成ASH報表Oracle
- ASH, AWR , 等待事件事件
- working with ASH and AWR
- 學用ORACLE AWR和ASH特性(7)-AWR的幾個幫Oracle
- 轉載Friend Life for Oracle的Oracle 10g,AWR,AWR,ADDM最佳實踐Oracle 10g
- 【效能調優】Oracle AWR報告指標全解析Oracle指標
- Oracle10g AWR及ASH詳解(final)Oracle
- oracle 10g awr效能收集工具的用法Oracle 10g
- oracle工具 awr formatOracleORM
- oracle效能awr報告Oracle
- Oracle AWR與ASH效能報告深入解析-核心引數詳解-手操-圖文-可下載Oracle
- [轉]Oracle資料庫ASH和AWR的簡單介紹Oracle資料庫
- Oracle OCP 1Z0 053 Q71(ADDM AWR Interval)Oracle
- Oracle10g的AWR效能優化工具介紹Oracle優化
- oracle ash效能報告的使用方法Oracle
- 轉載詳細的Oracle ASH/AWR介紹及報告分析Oracle
- oracle ASHOracle
- In 10g/11g,working with ASH and AWR
- Oracle資料庫 Exp/Imp工具效能調優Oracle資料庫
- 學用ORACLE AWR和ASH特性(4)-生成指定SQL的統計報表OracleSQL
- ASH buffers 資料取樣到AWR的問題
- oracle效能調優Oracle
- oracle 效能調整Oracle
- 9. Oracle常用分析診斷工具——9.3.ADDMOracle
- Oracle ADDM 自動診斷監視工具 介紹Oracle
- 9. Oracle常用分析診斷工具——9.2. ASHOracle
- ASH可以生成指定的session或sql_id的報告,ASH和AWR的區別SessionSQL