oracle Metrics相關檢視
這裡對10G的AWR,ASH,METRIC,ALERT&ADVISOR進行下總結
1、AWR架構包含兩個部分,一個是in-memory statistics,存放在記憶體中,一個是persistent portion
2、AWR中存放下面的統計資訊:Object statistics,new SQL statistics,The new wait classes interface,The new time-model statistics,V$SYSSTAT and V$SESSTAT,Oracle optimizer statistics,Operating system statistics,Active Session History,Metrics
3、ASH中包含最近會話的活動資訊,系統每秒對v$session進行抽樣,放在SGA中的ASH區,該ASH區採用的是迴圈使用的機制,V$ACTIVE_SESSION_HISTORY中包含的是活動會話的資訊。不是所有的ASH資料被寫入磁碟,因為資料量太大,所以進行了過濾。通常每60分鐘MMON程式會寫這些資訊,當ASH BUFFER滿的話MMNL程式會寫。
4、每CPU的ASH記憶體為2M,ASH記憶體不超過shared pool的5%
5、Base Statistics和Metrics:
base statistics是指收集的裸資訊
Metrics是基於base statistics的第二層資訊,可以跟蹤資料庫的活動變化情況。該統計資訊每分鐘由MMON程式進行更新。METRIC的值由MMON程式計算,儲存在記憶體中一個小時
相關檢視:
V$SYSMETRIC, V$SESSMETRIC, V$SERVICEMETRIC, V$METRICNAME
V$FILEMETRIC, V$EVENTMETRIC, V$WAITCLASSMETRIC
相關歷史資訊:v$sysmetric_history,dba_hist_*
6、workload repository駐留在SYSAUX表空間,可以透過DBMS_WORKLOAD_REPOSITORY.CREATE_BASELINE設定AWR Snapshot Baselines給某個時間段的snapshots加標籤。DBMS_WORKLOAD_REPOSITORY.MODIFY_SNAPSHOT_SETTINGS用於更改AWR SNAPSHOT的保留時間和收集間隔。DBMS_WORKLOAD_REPOSITORY.CREATE_SNAPSHOT用於手動建立SNAPSHOT。
7、隨著MMON程式的引入,ORACLE的一些內部元件可以週期性進行監控的動作,對發現的問題產生相應的alert資訊。alert資訊的產生是基於一些threshold值或者特定事件。相關alert資訊分兩種:EM產生的和SERVER產生的。兩者的差別在於一個是透過EMD(EM daemon)直接訪問SGA得到,一個是由MMON程式得到。SERVER產生的alert資訊在alert_que中排隊,該佇列的主要consumer是DBCONSOLE。
8、SERVER產生的alert可分為兩種,一種是基於threshold,一種是基於event。
基於threshold的alert資訊可以在DBA_OUTSTANDING_ALERTS中找到,當被clear的時候,會進入DBA_ALERT_HISTORY,而alert history被purge也是基於AWR資訊的purge策略。
基於事件的alert比如下面這些:Snapshot Too Old,Recovery Area Low On Free Space,Resumable Session Suspended。這部分alert資訊由DBCONSOLE控制,因為DBCONSOLE會把相關資訊存放在自己的repository中。
相關檢視:DBA_THRESHOLDS,v$alert_types
包:DBMS_SERVER_ALERT,過程:SET_THRESHOLD,GET_THRESHOLD
9、如何使用自己的工具而不是DBCONSOLE來顯示alert資訊:
首先透過DBMS_AQADM包的CREATE_AQ_AGENT建立一個AGENGT,並用ADD_SUBSCRIBER將AGENT進行SUBSCRIBE,然後將使用者和agent建立聯絡,並給使用者賦許可權,這需要下面兩個過程:ENABLE_DB_ACCESS和GRANT_QUEUE_PRIVILEGE。使用下面兩個過程可以讀取相關的ALERT資訊:DBMS_AQ.DEQUEUE和DBMS_SERVER_ALERT.EXPAND_MESSAGE。
過程DBMS_AQ.REGISTER用於當alert進入alert_que的時候接收一個非同步的通知資訊。
BEGIN
dbms_aqadm.add_subscriber('SYS.ALERT_QUE',
sys.aq$_agent('alrt_usr1','', 0));
dbms_aqadm.enable_db_access('alrt_usr1','alrt_usr1');
dbms_aqadm.grant_queue_privilege('DEQUEUE',
'alert_que','alrt_usr1', false);
END;
BEGIN
dbms_aq.dequeue('SYS.ALERT_QUE', dequeue_options,
message_properties, message, message_handle);
dbms_output.put_line('Reason: ' ||
dbms_server_alert.expand_message(userenv('LANGUAGE')
,message.message_id, message.reason_argument_1,
message.reason_argument_2,message.reason_argument_3,
message.reason_argument_4,message.reason_argument_5));
END;
10、透過SCHEDULER管理自動例行任務
首先定義一個管理視窗,然後將JOB和該時間視窗或者視窗組建立聯絡。JOB級別與資源使用要求相關。
下面是個例子:
DBMS_SCHEDULER.CREATE_JOB(
job_name => 'table_reorg',
job_type => 'STORED_PROCEDURE',
job_action => 'mypack.tab_reorg_job_proc',
job_class => 'AUTO_TASKS_JOB_CLASS',
schedule_name => 'WEEKEND_WINDOW');
11、Advisory
下面是相關的幾個Advisory的列表:
ADDM,SQL Tuning Advisor,SQL Access Advisor,PGA Advisor,SGA Advisor,Segment Advisor,Undo Advisor
所有的advisor都使用一致的介面;所有的advisor的一般源資料和結果都存放在workload repository.
一個典型的調整會話包含下面幾個步驟:
首先是建立調整任務:DBMS_ADVISOR.CREATE_TASK
選擇合適的任務引數:DBMS_ADVISOR.SET_TASK_PARAMETER,典型的引數包含TARGET_OBJECTS, TIME_WINDOW和TIME_LIMIT
進行分析:DBMS_ADVISOR.EXECUTE_TASK
檢視結果:DBMS_ADVISOR.GET_TASK_REPORT
相關檢視:
DBA_ADVISOR_DEFINITIONS,DBA_ADVISOR_TASKS,DBA_ADVISOR_LOG,DBA_ADVISOR_PARAMETERS,DBA_ADVISOR_COMMANDS,DBA_ADVISOR_OBJECTS,DBA_ADVISOR_FINDINGS,DBA_ADVISOR_RECOMMENDATIONS,DBA_ADVISOR_ACTIONS,DBA_ADVISOR_RATIONALE,DBA_ADVISOR_USAGE
V$SYSMETRIC_HISTORY
V$SYSMETRIC_HISTORY
displays all system metric values available in the database. Both long duration (60-second with 1 hour history) and short duration (15-second with one-interval only) metrics are displayed by this view.
本文出自:http://empo007.itpub.net/post/12076/465449
10g中的transaction等待事件
10G新特性:使用客戶端WALLET不用使用者名和密碼登陸遠端資料庫
今天手工建立10G資料庫失敗,報ORA-12701錯誤
設定10046跟蹤處理資料庫不能open一例
trace errorstack
Oracle常用EVENT參考
當例項不能正常連接,如何獲取診斷資訊?
RAC中臨時空間使用機制
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/13879334/viewspace-1035592/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 檢視oracle鎖相關資訊Oracle
- 19 Oracle Data Guard 相關檢視Oracle
- Oracle相關資料字典檢視Oracle
- oracle許可權相關檢視Oracle
- oracle-一些檢視效能相關的檢視Oracle
- Oracle11gDATAGUARD相關檢視備忘Oracle
- oracle cluster叢集相關日誌檢視Oracle
- 【ORACLE】物化檢視相關後設資料檢視欄位說明Oracle
- oracle 11g 統計資訊 相關檢視Oracle
- Oracle10g新增的檢視dba_tablespace_usage_metricsOracle
- sql server 檢視tempdb使用的相關檢視SQLServer
- 【AWR】Oracle awr相關檢視及體系介紹Oracle
- Oracle ASM 相關的 檢視(V$) 和 資料字典(X$)OracleASM
- 物化檢視相關工具包
- Dataguard (Standby) 相關的檢視(View)View
- linux檢視cpu相關資訊Linux
- 與oracle10g data guard(dg)緊密關聯的相關檢視Oracle
- Linux檢視相關係統資訊Linux
- RMAN相關的動態效能檢視
- 查詢基表的相關檢視
- 【ORACLE】常用物化檢視相關後設資料查詢語句Oracle
- 檢視Oracle基礎配置資訊和效能相關資訊的指令碼Oracle指令碼
- Oracle許可權(二)許可權相關的動態效能檢視與資料字典檢視Oracle
- oracle檢查點的相關知識Oracle
- Data Guard相關的動態效能檢視
- 檢視和儲存過程相關物件儲存過程物件
- DG學習筆記(12)_相關檢視筆記
- Linux下使用ps命令來檢視Oracle DB以及EBS相關的程式LinuxOracle
- Linux檔案內容檢視相關命令Linux
- Linux根據程式號,檢視相關資訊Linux
- RMAN備份相關的動態效能檢視
- SGA相關的幾個動態效能檢視
- Linux檢視主機板的相關資訊Linux
- Oracle中使用者、角色、與許可權涉及的相關表及檢視Oracle
- mysql鎖分析相關的幾個系統檢視MySql
- 通過連線檢視資料庫相關資訊資料庫
- flashback總結二之相關的三個檢視
- Oracle相關Oracle