文章出處:https://blogs.oracle.com/Database4CN/entry/oracle_11g_%E8%AF%8A%E6%96%AD%E6%96%B0%E7%89%B9%E6%80%A7_adr_%E7%AE%80%E4%BB%8B
Oracle 11g 診斷新特性——ADR簡介
ADR(Automatic Diagnostic Repository)是一個基於文件的檔案庫,用於存放數據庫的診斷信息,例如跟蹤文件,意外dump文件,IPS包,警告日誌文件,健康監控報告,核心dump文件以及其它診斷信息。ADR的根目錄叫做ADR
base, 位置通過參數DIAGNOSTIC_DEST設置。ADR擁有統一的目錄結構,在數據庫之外存儲多個產品和實例的診斷信息,因此即使在數據庫關閉時仍然可以進行問題診斷。
從Oracle 11gR1開始,ADR用於存儲數據庫,ASM,CRS和其它產品或組件(如listener)的診斷信息。每一個實例或者產品擁有各自的ADR
home路徑。例如在一個RAC環境下,ASM,數據庫實例擁有單獨的ADR home。
名詞解釋
嚴重錯誤(Critical Error)是指會產生跟蹤文件的Oracle內部錯誤。Oracle把他們劃分爲不同的類別,內部錯誤(ORA-600),系統訪問異常(ora-7445,ora-3113),鎖相關的錯誤,壞塊(ORA-1578)和內存不足(ORA-4030/4031)等。
事件(Incident)是指一次嚴重錯誤,每出現一次嚴重錯誤,就會產生一次事件。ADR會跟蹤每一個事件併產生唯一的事件ID。
問題(Problem)是一組嚴重錯誤,他們擁有一組共同的屬性。ADR跟蹤每一個問題,並且給每一個問題產生一個唯一的問題ID.
改變
從11gR1開始,所有的診斷信息都保存在ADR中。ADR是一個外部的,迷你的XML數據庫。
跟蹤文件和進程的1:1對應不再存在。雖然進程跟蹤文件仍然存在,但是它只記錄每個事件的trc和trm文件的位置。Oracle爲每一個事件產生一對兒文件——trc和trm文件。trc文件存放診斷信息,而trm文件存放元數據。
另外,文件的內部結構也發生了改變。例如一個XML格式的文件被引入,存放在ADR home的alert路徑下(ADR_BASE/diag/rdbms/<db_name>/<SID>/alert/log.xml)。trc文件由若干個標記過的XML記錄構成,每個記錄都是分層排序過的。這種改變更加容易找到文件中我們感興趣的部分的信息。
Diagnostic Frame Work(DFW)是如何工作的
1. 當一個嚴重錯誤發生時,DDE(diagnosticdata extractor)被出發,並將相應的診斷信息寫入到事件跟蹤文件。
2. ADR中的診斷信息可以通過ADRCI(命令行工具)或者SWB(Support WorkBench,圖形界面)被訪問。
3. 通過ADRCI或SWB從ADR中抽取診斷信息並創建包,這稱之爲事件打包服務(IPS)。查看診斷信息或上傳IPS包到MOS。IPS包包含對應事件的所有診斷信息。
使用ADRCI或SWB創建IPS包的步驟
ADRCI
1.進入ADRCI
# adrci
2. 顯示存在的ADR home
adrci>show home
4. 設定ADR home
adrci>set home
5. 顯示所有問題
adrci>show problem
6. 顯示所有事件
adrci>show incident
7. 打包事件的診斷信息
adrci>ips pack incident <incident id>
SWB
1. 登錄到企業管理器
2. 單擊鏈接‘supportworkbench’
3. 選擇‘all active’的問題
4. 單擊‘問題id’查看對應的事件
5. 選擇相應的事件
6. 單擊 ‘quickpackage’
7. 輸入包名,描述信息,選擇是否上傳到oraclesupport
8. 查看包中的信息
9.選擇‘立即’創建包,並單擊按鈕‘submit’
更多信息
請閱讀下面的note獲得更多的信息。
Note 422893.1 - 11gUnderstanding Automatic Diagnostic Repository.
Note 1091653.1 - "11gQuick Steps - How to create an IPS package using Support Workbench"[Video]
Note 443529.1 - 11gQuick Steps to Package and Send Critical Error Diagnostic Information toSupport[Video]
您還可以在MOS上下載相關的中文培訓錄音:
Note 1268733.1 - Database Manageability: Diagnosibility archived Webcasts