您的位置:首页 > 数据库 > Oracle

Oracle 11g新特性:Automatic Diagnostic Repository

2012-09-11 22:38 429 查看
作者:eygle |English
Version 【转载时请以超链接形式标明文章出处和作者信息及本声明

链接:http://www.eygle.com/archives/2007/08/11g_auto_diag_repository.html

站内相关文章|Related Articles

Oracle
Linux 6 使用 Ext4的性能体验

Oracle
11g默认用户密码增强-default_pwd$

Oracle
Database 11g Release 2 HP/AIX

Oracle
11gR2 Solaris x86-64 发布

Oracle
11gR2 Solaris (SPARC) (64-bit) 发布

Oracle Database 11g的FDI(Fault
Diagnosability Infrastructure)是自动化诊断方面的又一增强。

FDI的一个关键组件是自动诊断库(Automatic Diagnostic Repository-ADR)。

在Oracle Database 11g之前,Oracle的各类跟踪文件、日志文件等诊断文件的存储位置并不统一,现在在FDI的基础架构之上,Oracle开始统一规划这些文件的存储,ADR之于诊断文件,就类似于OFA(Optimal Flexible Architecture )之于数据库文件,FRA(Flash
Recovery Area)之于备份文件。

ADR的路径被称为ADR BASE,这个位置由一个新的初始化参数DIAGNOSTIC_DEST决定。

SQL> show parameter diagnostic_dest

NAME TYPE VALUE

------------------------------------ ----------- ------------------------------

diagnostic_dest string /opt/oracle

这个参数的缺省值和环境变量ORACLE_BASE有关:

■ 如果设置了 ORACLE_BASE 则 DIAGNOSTIC_DEST = ORACLE_BASE

■ 如果未设置 ORACLE_BASE ,则 DIAGNOSTIC_DEST = ORACLE_HOME/log

我们可以简单看一下ADR BASE的目录结构:

[oracle@test126 ~]$ tree -d diag/

diag/

|-- asm

|-- clients

|-- crs

|-- diagtool

|-- lsnrctl

|-- netcman

|-- ofm

|-- rdbms

| `-- eygle

| `-- eygle

| |-- alert

| |-- cdump

| |-- hm

| |-- incident

| |-- incpkg

| |-- ir

| |-- lck

| |-- metadata

| |-- stage

| |-- sweep

| `-- trace

`-- tnslsnr

`-- test126

`-- listener

|-- alert

|-- cdump

|-- incident

|-- incpkg

|-- lck

|-- metadata

|-- stage

|-- sweep

`-- trace

33 directories

现在一目了然,包括ASM、CRS等组件日志都被ADR囊括其中。

对于FRA,通过V$FLASH_RECOVERY_AREA_USAGE视图,Oracle可以知道闪回区的使用情况.

现在对于ADR,Oracle可以通过一个新的视图v$diag_info来查询自动诊断库的信息:

SQL> select * from v$diag_info;

INST_ID NAME VALUE

---------- ------------------------- ------------------------------------------------------------

1 Diag Enabled TRUE

1 ADR Base /opt/oracle

1 ADR Home /opt/oracle/diag/rdbms/eygle/eygle

1 Diag Trace /opt/oracle/diag/rdbms/eygle/eygle/trace

1 Diag Alert /opt/oracle/diag/rdbms/eygle/eygle/alert

1 Diag Incident /opt/oracle/diag/rdbms/eygle/eygle/incident

1 Diag Cdump /opt/oracle/diag/rdbms/eygle/eygle/cdump

1 Health Monitor /opt/oracle/diag/rdbms/eygle/eygle/hm

1 Default Trace File /opt/oracle/diag/rdbms/eygle/eygle/trace/eygle_ora_10858.trc

1 Active Problem Count 0

1 Active Incident Count 0

11 rows selected.

SQL> select table_name from dict where table_name like '%DIAG%';

TABLE_NAME

------------------------------

V$DIAG_INFO

GV$DIAG_INFO

Oracle每一个进步都是精心设计的,模块化、规范化正在被不断的加强。

-The End-
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: