Oracle 自己主动诊断资料档案库 (ADR)、自己主动诊断工作流、ADRCI工具
1.自己主動診斷工作流:
通過一個始終處于打開狀態(tài)的內(nèi)存中跟蹤工具,數(shù)據(jù)庫組件能夠在第一次出現(xiàn)嚴(yán)重錯誤故障時捕獲診斷數(shù)據(jù)。系統(tǒng)將自己主動維護(hù)一個稱為“自己主動診斷資料檔案庫”的特殊資料檔案庫,以保存有關(guān)嚴(yán)重錯誤事件的診斷信息。此信息可用于創(chuàng)建要發(fā)送到 Oracle 支持服務(wù)以進(jìn)行調(diào)查的意外事件程序包。
以下是一個典型的診斷會話工作流:
1)意外事件導(dǎo)致 Oracle Enterprise Manager (EM) 中出現(xiàn)預(yù)警。
2)DBA 可通過 EM 的“Alert(預(yù)警)”頁查看此預(yù)警。
3)DBA 能夠細(xì)化到意外事件和問題的具體信息。
4)DBA 能夠決定或 Oracle 支持服務(wù)能夠要求將信息打包并通過 MetaLink 發(fā)送到 Oracle 支持服務(wù)。DBA 能夠?qū)⑽募尤氲阶约褐鲃哟虬臄?shù)據(jù)中。
?
2.自己主動診斷資料檔案庫 (ADR)
ADR 是一個基于文件的資料檔案庫。用于存放數(shù)據(jù)庫診斷數(shù)據(jù)(如跟蹤、意外事件轉(zhuǎn)儲和程序包、預(yù)警日志、健康監(jiān)視報表、核心轉(zhuǎn)儲等)。它對存儲在不論什么數(shù)據(jù)庫外的多個實例和多種產(chǎn)品使用一個統(tǒng)一的文件夾結(jié)構(gòu)。
因此。在數(shù)據(jù)庫關(guān)閉時可用來診斷問題。
從 Oracle Database 11g R1 開始。數(shù)據(jù)庫、自己主動存儲管理 (ASM)、集群就緒服務(wù) (CRS) 和其他 Oracle 產(chǎn)品或組件將全部診斷數(shù)據(jù)都存儲在 ADR 中。每種產(chǎn)品的每一個實例都將診斷數(shù)據(jù)存儲在自己的 ADR 主文件夾下。比如,在具有共享存儲和 ASM 的 Real Application Clusters 環(huán)境中,每一個數(shù)據(jù)庫實例和每一個 ASM 實例在 ADR 中都有一個主文件夾。
利用 ADR 的統(tǒng)一文件夾結(jié)構(gòu)、用于各種產(chǎn)品和實例的統(tǒng)一診斷數(shù)據(jù)格式以及一組統(tǒng)一的工具。客戶和 Oracle 技術(shù)支持能夠相互關(guān)聯(lián)并分析多個實例的診斷數(shù)據(jù)。
ADR 根文件夾又稱為 ADR 基文件夾。其位置由 DIAGNOSTIC_DEST 初始化參數(shù)設(shè)置。假設(shè)此參數(shù)被忽略或留為空值,則數(shù)據(jù)庫在啟動時將對 DIAGNOSTIC_DEST 進(jìn)行例如以下設(shè)置:假設(shè)設(shè)置了環(huán)境變量 ORACLE_BASE。則將 DIAGNOSTIC_DEST 設(shè)置為 $ORACLE_BASE。假設(shè)未環(huán)境變量設(shè)置 ORACLE_BASE,則將 DIAGNOSTIC_DEST 設(shè)置為 $ORACLE_HOME/log。
?
3.ADR 命令行工具 ADRCI
ADRCI 是一種命令行工具,屬于數(shù)據(jù)庫故障診斷基礎(chǔ)結(jié)構(gòu)的一部分。
ADRCI 能夠通過操作系統(tǒng)提示符與 ADR 進(jìn)行交互。
使用 ADRCI 能夠查看自己主動診斷資料檔案庫中的診斷數(shù)據(jù)。
使用 ADRCI 能夠:
--查看自己主動診斷資料檔案庫 (ADR) 中的診斷數(shù)據(jù)
--將意外事件和問題信息打包成 zip 文件傳輸?shù)?Oracle 技術(shù)支持
ADRCI 具有豐富的命令集,可在交互模式下使用,也能夠在腳本中使用。此外,ADRCI 還能夠運行 ADRCI 命令腳本,使用的方式與 SQL*Plus 運行 SQL 腳本和 PL/SQL 命令的方式同樣。
$ adrci
ADRCI: Release 11.1.0.5.0 - On Sat Jul 7 08:01:40 2007
Copyright (c) 1982, 2007, Oracle. All rights reserved.
?
ADR base = "/u01/app/oracle"
?
ADRCI> show incident
ADR Home = /u01/app/oracle/product/11.1.0/db_1/log/diag/rdbms/orcl/orcl:
**************************************************************************
INCIDENT_ID PROBLEM_KEY????????????????????????? CREATE_TIME
----------- ------------------------------------ ------------------------
1681??????? ORA-600_dbgris01:1,_addr=0xa9876541? 17-JAN-07 09.17.44.843125…?
1682??????? ORA-600_dbgris01:12,_addr=0xa9876542 18-JAN-07 09.18.59.434775…
2 incident info records fetched
4.V$DIAG_INFO 視圖
SQL> SELECT * FROM V$DIAG_INFO;
NAME????????????????? VALUE
-------------------?? -------------------------------------------------
Diag Enabled????????? TRUE
ADR Base????????????? /u01/app/oracle
ADR Home????????????? /u01/app/oracle/diag/rdbms/orcl/orcl
Diag Trace??????????? /u01/app/oracle/diag/rdbms/orcl/orcl/trace
Diag Alert??????????? /u01/app/oracle/diag/rdbms/orcl/orcl/alert
Diag Incident???????? /u01/app/oracle/diag/rdbms/orcl/orcl/incident
Diag Cdump??????????? /u01/app/oracle/diag/rdbms/orcl/orcl/cdump
Health Monitor??????? /u01/app/oracle/diag/rdbms/orcl/orcl/hm
Default Trace File??? /u01/app/oracle/diag/.../trace/orcl_ora_11424.trc
Active Problem Count? 3
Active Incident Count 8
?
V$DIAG_INFO 視圖列出了全部重要 ADR 的位置:
ADR Base:ADR 基文件夾的路徑。
ADR Home:當(dāng)前數(shù)據(jù)庫實例的 ADR 主文件夾的路徑。
Diag Trace:文本預(yù)警日志和后臺/前臺進(jìn)程跟蹤文件的位置。
Diag Alert:XML 版本號的預(yù)警日志的位置。
Diag Incident:意外事件日志的寫入位置。
Diag Cdump:在此文件夾中寫入診斷核心文件。
Health Monitor:執(zhí)行健康監(jiān)視時產(chǎn)生的日志的位置。
Default Trace File:會話的跟蹤文件的路徑。
SQL 跟蹤文件寫入此位置。
?
5.Oracle 10g 與 Oracle 11g 的診斷跟蹤的位置
診斷數(shù)據(jù) ???????? 曾經(jīng)的位置 ???????????????????????????????? ????????????? ADR 位置
前臺進(jìn)程跟蹤 ?USER_DUMP_DEST ?????????????????? ??????????? ADR_HOME/trace
后臺進(jìn)程跟蹤 ?BACKGROUND_DUMP_DEST ????????????? ?ADR_HOME/trace
預(yù)警日志數(shù)據(jù) ?BACKGROUND_DUMP_DEST ?????????????? ADR_HOME/alert?? ADR_HOME/trace
核心轉(zhuǎn)儲??????? ?CORE_DUMP_DEST??????????????????? ??????????? ADR_HOME/cdump
意外事件轉(zhuǎn)儲 ?USER|BACKGROUND_DUMP_DEST ???? ADR_HOME/incident/incdir_n
?
?
?
?
?
?
?
?
?
轉(zhuǎn)載于:https://www.cnblogs.com/zfyouxi/p/5366715.html
總結(jié)
以上是生活随笔為你收集整理的Oracle 自己主动诊断资料档案库 (ADR)、自己主动诊断工作流、ADRCI工具的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C++11新特性,利用std::chro
- 下一篇: Monkey测试com.android.