產生awr報告,awr報告
主要參考文檔:
http://343766868.blog.163.com/blog/static/48314056201110124513396/
概況
Oracle內部以一定的頻率把系統關鍵的統計資訊和負載情況儲存起來,產生snapshot(快照),所有的snapshot儲存在awr中,即automatic workload repository。
當探索資料庫出現效能問題時,就可以抽取儲存在awr中的snapshot資訊,產生在指定時間段內(即你指定的snapshot所囊括的時間段)的awr報告。然後對報告進行分析,發現系統存在的問題。
首先說下快照的管理。查看已產生快照列表資訊
Select * from dba_hist_snapshot;
一般情況下,snapshot不需要手動管理,若有特殊需要,也可以進行手動產生和刪除操作。
手動產生snapshot。
SQL>execdbms_workload_repository.create_snapshot();
手動刪除snapshot。
SQL>exec dbms_workload_repository.dorp(low_snap_id=>1,high_snap_id=>2);
更改snapshot頻率等參數。
資料庫預設是每一個小時進行一次snapshot產生操作,每個snapshot保留7天。
可以通過以下語句查詢資料庫當前的快照組建組態資訊。
select * from dba_hist_wr_control;
若需要更改次預設參數,也可以使用
SQL>exec dbms_workload_repository.modify_snapshot_settings(interval=>60
Retention=>3*24*60
);
其中:
retention參數及保留時間,單位是min(分鐘)。若設定為0,則快照將持續保留。若設定為null,則保留原設定。此參數的範圍為1天---100年。
Interval參數為產生snapshot頻率。單位是min(分鐘)。若設定為0,則表示禁用手動和自動產生快照的功能。若設定為null,則保留原設定。此參數的範圍為10min---1年。
此外還有topnsql和dbid參數,topnsql表示要採集比較佔資源的sql數量。
產生awr報告。
瞭解了快照之後,就可以利用snapshot產生awr報告。
自動產生是使用OEM中的查看awr相關項目,手動產生時指執行oracle提供的執行指令碼。
指令碼位於$ORACLE_HOME/rdbms/admin/目錄下,名字為awrrpt.sql。
SQL>@?/rdbms/admin/awrrpt.sql
即可。產生的路徑為你進入sqlplus前的目前的目錄。所以若要把報告放在指定目錄,可事先進入該目錄,比如
Cd /tmp/awr/
然後在進入sqlplus,手動產生awr報告。
產生awr報告後,就剩下分析awr報告了,這是個比較大的問題,也是個比較難的問題,以後慢慢說。
產生oracle資料庫awr報告所需要的許可權?
AWR報告(的)產生技巧如下::
1,,登陸Oracle資料庫::
sqlplus / as sysdba
2, 在sqlplus中,,以sys使用者運行下面(的)命令,,產生第一份效能資料快照::
exec DBMS_WORKLOAD_REPOSITORY.CREATE_SNAPSHOT (flush_level=>'ALL');
3,,運行您找到(的)所有或很多效能較差(的)應用或SQL,,讓系統壓力始終處於比較高(的)狀態(如CPU或IO(的)使用),,並保持此狀態達到半小時到1小時
4,,在sqlplus中,,以sys使用者再次運行下面(的)命令,,產生第二份效能資料快照::
exec DBMS_WORKLOAD_REPOSITORY.CREATE_SNAPSHOT (flush_level=>'ALL');
5,,在sqlplus中,,以sys使用者運行下面(的)命令,,以產生效能報告::
@?/rdbms/admin/awrrpt.sql
根據提示,,選擇上面產生(的)2個效能資料快照,,最後會產生一個最終(的)AWR效能報告..
怎產生 AWR 報告
1.產生單一實例 AWR 報告:@$ORACLE_HOME/rdbms/admin/awrrpt.sql2.產生 Oracle RAC AWR 報告:@$ORACLE_HOME/rdbms/admin/awrgrpt.sql3.產生 RAC 環境中特定資料庫執行個體的 AWR 報告:@$ORACLE_HOME/rdbms/admin/awrrpti.sql4.產生 Oracle RAC 環境中多個資料庫執行個體的 AWR 報告的方法:@$ORACLE_HOME/rdbms/admin/awrgrpti.sql5.產生 SQL 陳述式的 AWR 報告:@$ORACLE_HOME/rdbms/admin/awrsqrpt.sql6.產生特定資料庫執行個體上某個 SQL 陳述式的 AWR 報告:@$ORACLE_HOME/rdbms/admin/awrsqrpi.sql--產生 AWR 時段對比報告7.產生單一實例 AWR 時段對比報告@$ORACLE_HOME/rdbms/admin/awrddrpt.sql8.產生 Oracle RAC AWR 時段對比報告@$ORACLE_HOME/rdbms/admin/awrgdrpt.sql9.產生特定資料庫執行個體的 AWR 時段對比報告@$ORACLE_HOME/rdbms/admin/awrddrpi.sql10.產生 Oracle RAC 環境下特定(多個)資料庫執行個體的 AWR 時段對比報告@$ORACLE_HOME/rdbms/admin/awrgdrpi.sql來源: 51cto 作者:Oracle小混子