Oracle 数据库自动诊断库 ADR(Automatic Diagnostic Repository)简介

Oracle ADR(Automatic Diagnostic Repository)是一个存储数据库诊断数据的文件库,包括跟踪、转储、警报日志等。本文介绍了ADR的作用、文件组成、目录结构,以及如何使用ADRCI工具进行管理。通过对ADR的理解,运维工程师可以更有效地排查和解决Oracle数据库问题。
摘要由CSDN通过智能技术生成

作者介绍

姚远:鼎甲科技高级技术顾问,墨天轮MVP。Oracle ACE,华为云MVP,专注于 Oracle、MySQL 数据库多年,拥有 Oracle 10g、12c OCM, MySQL 5.6、5.7、8.0 OCP,并在:EMC、IBM p、RedHat、Cisco、SQL Server、DB2 等领域拥有 20 + 技术认证。两次获得国家部级科技进步奖,发明过两项计算机相关专利。现在广州鼎甲任高级技术顾问,向同事和客户提供Oracle 和 MySQL方面的培训和技术咨询。


ADR 的作用

Oracle 数据库如果出现故障,我们的第一个反应是查看数据库的 alert log,但一些工程师对 alert log 不熟悉,实际上 alert log 位于Oracle 数据库自动诊断库(Automatic Diagnostic Repository,以下简称 ADR) 中,要熟悉 alert log,我们必需全面了解 ADR 的概念。

ADR(Automatic Diagnostic Repository)是一个基于文件的存储库,用于存储数据库诊断数据,如跟踪、转储、警报日志、运行状况监视报告等。它具有跨多个实例和多个产品的统一目录结构。为什么基于文件的原因是显而易见的,因为数据库出现故障的时候数据库可能无法打开,将诊断信息放到文件里面保证了随时可以查阅。数据库、Oracle自动存储管理(Oracle ASM)、侦听器、Oracle Clusterware和其他Oracle产品或组件将所有诊断数据存储在ADR中。每个产品的每个实例都将诊断数据存储在ADR中自己的主目录下。例如,在具有共享存储和 Oracle ASM 的 Oracle Real Application Clusters 环境中,每个数据库实例和每个 Oracle ASM 实例都有一个ADR主目录。


ADR 中的文件

  • trace:每个服务器和后台进程都可以写入关联的 trace 文件。trace 文件在流程的整个生命周期内定期更新,可以包含有关流程环境、状态、活动和错误的信息。此外,当进程检测到严重错误时,它会将有关该错误的信息写入其 trace 文件。

  • dumps:dumps 是一种特定类型的 trace 文件。它通常是针对事件(如事件)的诊断数据的一次性输出,而 trace file 往往是诊断数据的连续输出。

  • core:core 文件包含一个内存转储,采用全二进制的格式。

  • Alert Log 和 sbtio.log 在后面说明。


ADR 的目录结构


ADR 的基目录称为 ADR base ,其位置由数据库的参数 DIAGNOSTIC_DEST 决定,如果省略此参数或将其留空,则数据库将在启动时采用下面的规则进行设置:

  1. 如果设置了环境变量 ORACLE_BASE,则 DIAGNOSTIC_DEST  设置为 ORACLE_BASE 指定的目录。

  2. 如果未设置环境变量 ORACLE_BASE,则 DIAGNOSTIC_DEST 设置为 ORACLE_HOME/log。
    因此,目前一个常见的 ADR base 例子是 /u01/app/oracle。
    在ADR base中,可以有多个 ADR home,其中每个 ADR home 是特定 Oracle 产品或组件的特定实例的所有诊断数据跟踪、转储、警报日志等的根目录。例如,在带有 Oracle ASM 的 Oracle Real Application Clusters 环境中,每个数据库实例、Oracle ASM实例和侦听器都有一个ADR home,结构如下:

一个方便的查询所有组件的家目录的方法是在 adrci 工具中用 show homes 的命令,例如:

ADR base = "/u01/app/grid"adrci> show homes;ADR Homes: diag/asm/+asm/+ASM1diag/crs/rac1/crsdiag/clients/user_grid/host_1874443374_110diag/clients/user_root/host_1874443374_110diag/tnslsnr/rac1/asmnet1lsnr_asmdiag/tnslsnr/rac1/listener_scan1diag/tnslsnr/ra
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值