Oracle 11g 诊断新特性—ADR 简介

本文深入解析了ADR(Automatic Diagnostic Repository)的概念及其在Oracle 11gR1及之后版本中的应用。介绍了ADR如何存储数据库、ASM、CRS等组件的诊断信息,以及事件、问题和严重错误的定义。同时,阐述了Diagnostic Framework的工作流程,包括如何使用ADRCI和SWB工具进行事件诊断和打包。

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)是如何工作的

image.php?url=0LUEB5HLBK

1. 当一个严重错误发生时,DDE(diagnostic data 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. 单击链接‘support workbench

3. 选择‘all active’的问题

4. 单击‘问题id’查看对应的事件

5. 选择相应的事件

6. 单击 ‘quick package’

7. 输入包名,描述信息,选择是否上传到oracle support

8. 查看包中的信息

9. 选择‘立即’创建包,并单击按钮‘submit

image.php?url=0LUEB5epcr

转载于:https://my.oschina.net/u/3635497/blog/3022570

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值