oracle 19C rac 数据库的目录结构及日志路径
在Oracle 19c RAC(Real Application Clusters)集群中,有多个组件和层级生成的日志文件,记录着集群的活动、事件和错误信息,用于故障诊断、性能优化和集群管理。以下是常见的Oracle 19c RAC集群日志文件的概述:
- Grid Infrastructure日志:
- crsd.log:Cluster Ready Services(CRS)守护进程的日志文件。记录了集群资源的状态、事件处理和集群管理操作的详细信息。位于$GRID_HOME/log//crs/目录下。
- ohasd.log:Oracle High Availability Services(OHAS)守护进程的日志文件。记录了OHASD的活动和错误信息,包括节点心跳、资源管理和网络通信等。位于$GRID_HOME/log//crs/目录下。
- crsctl.log:crsctl命令的执行日志。记录了使用crsctl工具执行的命令、选项和输出。位于$GRID_HOME/log//crs/目录下。
- ASM(Automatic Storage Management)日志:
- asm_<INSTANCE_NAME>.log:ASM实例的日志文件。记录了ASM实例的启动、停止和底层磁盘组操作的信息。位于$GRID_HOME/log//asm/目录下。
- asm_a<INSTANCE_NAME>.log:ASM进程的日志文件。包含了ASM进程的活动日志和错误信息,如LMD(ASM实例的后台进程)等。位于$GRID_HOME/log//asm/目录下。
- 数据库实例日志:
- alert_.log:数据库实例的警报日志。记录了数据库的启动、关闭和重要事件,以及错误和警告信息。位于$ORACLE_BASE/diag///trace/目录下。
- _.trc:数据库实例进程的跟踪文件。当进程发生错误时,会生成此文件,包含了有关错误和调试信息。位于$ORACLE_BASE/diag///trace/目录下。
- 监听器(Listener)日志:
- listener.log:监听器的日志文件。记录了连接请求、断开连接和其他网络相关的事件。位于$ORACLE_HOME/network/log/目录下。
Grid Infrastructure(GI),集群软件是搭建RAC的基础,是RAC逻辑层次当中的集群层,是RAC重要的组成部分,同样也是RAC高可用性的保障。GI包含两个最主要的组件:Clusterware集群软件和ASM存储软件。Clusterware是Oracle的集群解决方案,ASM是Oracle的存储解决方案,这两大方案的数据库共同构成了RAC高可用解决方案。
相对于Oracle单实例来说,部署安装和维护GI都增加了难度,尤其在日常的维护和故障处理过程中,各种日志的查看更加重要,本文主要对Oracle 19c 下的目录结构和路径进行介绍和说明。
- GI软件的安装目录是
2.GI集群的目录结构:
注:当前目录/u01/app/grid/diag
.
├── afdboot
├── apx
├── asm
│ └── +asm
│ ├── +ASM
│ │ ├── alert
│ │ │ └── log.xml
│ │ ├── cdump
│ │ ├── hm
│ │ ├── incident
│ │ ├── incpkg
│ │ ├── ir
│ │ ├── log
│ │ │ ├── attention
│ │ │ ├── attention.log
│ │ │ ├── ddl
│ │ │ ├── debug
│ │ │ ├── hcs
│ │ │ ├── imdb
│ │ │ └── test
│ │ ├── metadata
│ │ │ ├── ADR_INTERNAL.mif
│ │ ├── metadata_dgif
│ │ ├── metadata_pv
│ │ ├── stage
│ │ ├── sweep
│ │ └── trace
│ │ ├── alert_+ASM.log
│ │ └── cdmp_20220614104538
│ └── i_1.mif
├── asmcmd
│ ├── user_grid
│ │ └── dkf
│ │ ├── alert
│ │ │ └── alert.log
│ │ └── trace
│ └── user_oracle
│ └── dkf
│ ├── alert
│ │ └── alert.log
│ └── trace
├── asmtool
│ └── user_grid
│ └── host_626160142_110
│ ├── alert
│ │ └── log.xml
│ ├── cdump
│ ├── incident
│ ├── incpkg
│ ├── log
│ │ ├── attention
│ │ ├── debug
│ │ └── test
│ ├── metadata
│ ├── metadata_dgif
│ ├── metadata_pv
│ ├── stage
│ ├── sweep
│ └── trace
│ └── alert.log
├── bdsql
├── clients
│ └── user_grid
│ └── host_626160142_110
│ ├── alert
│ │ └── log.xml
│ ├── cdump
│ ├── incident
│ ├── incpkg
│ ├── log
│ │ ├── attention
│ │ ├── debug
│ │ └── test
│ ├── metadata
│ ├── metadata_dgif
│ ├── metadata_pv
│ ├── stage
│ ├── sweep
│ └── trace
│ └── sqlnet.log
├── crs
│ └── dkf
│ └── crs
│ ├── alert
│ │ └── log.xml
│ ├── cdump
│ ├── incident
│ ├── incpkg
│ ├── log
│ │ ├── attention
│ │ ├── debug
│ │ └── test
│ ├── metadata
│ ├── metadata_dgif
│ ├── metadata_pv
│ ├── stage
│ ├── sweep
│ └── trace
│ ├── alert.log
├── diagtool
├── dps
├── em
├── gsm
├── ios
├── kfod
│ └── dkf
│ └── kfod
│ ├── alert
│ │ └── log.xml
│ ├── cdump
│ ├── incident
│ ├── incpkg
│ ├── log
│ │ ├── attention
│ │ ├── debug
│ │ └── test
│ ├── metadata
│ ├── metadata_dgif
│ ├── metadata_pv
│ ├── stage
│ ├── sweep
│ └── trace
│ ├── alert_+ASM.log
│ ├── alert_dkf006.log
├── lsnrctl
├── netcman
├── ofm
├── plsql
├── plsqlapp
├── rdbms
└── tnslsnr
└── dkf
└── listener
├── alert
│ └── log.xml
├── cdump
├── incident
├── incpkg
├── log
│ ├── attention
│ ├── debug
│ └── test
├── metadata
├── metadata_dgif
├── metadata_pv
├── stage
├── sweep
└── trace
└── listener.log
3.Oracle集群件诊断日志文件存储在diag/目录中,GI中的每个组件在diag/目录中拥有各自的目录:看下跟日志相关的路径如下:
.
├── asm
│ └── +asm
│ ├── +ASM
│ │ ├── alert
│ │ │ └── log.xml
│ │ ├── log
│ │ │ ├── attention
│ │ │ └── attention.log
│ │ └── trace
│ │ ├── alert_+ASM.log
│ │ └── cdmp_20220614104538
│ └── i_1.mif
├── asmcmd
│ ├── user_grid
│ │ └── dkf
│ │ ├── alert
│ │ │ └── alert.log
│ │ └── trace
│ └── user_oracle
│ └── dkf
│ ├── alert
│ │ └── alert.log
│ └── trace
├── asmtool
│ └── user_grid
│ └── host_626160142_110
│ ├── alert
│ │ └── log.xml
│ └── trace
│ └── alert.log
├── clients
│ └── user_grid
│ └── host_626160142_110
│ ├── alert
│ │ └── log.xml
│ └── trace
│ └── sqlnet.log
├── crs
│ └── dkf
│ └── crs
│ ├── alert
│ │ └── log.xml
│ └── trace
│ └── alert.log
├── kfod
│ └── dkf
│ └── kfod
│ ├── alert
│ │ └── log.xml
│ └── trace
│ ├── alert_+ASM.log
│ └── alert_dkf006.log
└── tnslsnr
└── dkf
└── listener
├── alert
│ └── log.xml
└── trace
└── listener.log
Cluster Ready Services (CRS) 日志是Oracle 19c RAC(Real Application Clusters)集群中用于记录集群资源、事件和管理操作的日志文件。以下是与CRS相关的日志文件:
- crsd.log:位于 $GRID_HOME/log//crs/ 目录下,记录了 Cluster Ready Services(CRS)守护进程的活动和事件。这个日志文件中会记录集群资源的状态、资源故障以及处理事件的详细信息。对于故障诊断和集群管理非常有用。
- ohasd.log:位于 $GRID_HOME/log//crs/ 目录下,记录了 Oracle High Availability Services(OHAS)守护进程的活动和错误信息。OHASD负责节点心跳、资源管理和网络通信等关键任务,在这个日志文件中可以追踪和诊断集群的各种相关问题。
- crsctl.log:位于 $GRID_HOME/log//crs/ 目录下,记录了 crsctl 命令的执行日志。当使用 crsctl 工具执行集群管理命令时,该日志文件会记录命令的执行情况、选项和输出,方便进行调试和分析操作命令的结果。
这些日志文件记录了CRS组件的运行状态、错误和事件信息,对于故障排除、性能优化和集群管理非常重要。通过查看和分析CRS日志,您可以了解集群资源的状态、处理事件的详细信息,以便及时处理和解决集群中的问题。
其中:
在19c中,日志路径发生了非常大的变化,与Oracle集群件相关的调试日志文件存储在/u01/app/grid/diag/crs/dkf/crs/trace目录中。
HAS的日志信息:
路径:
[grid@p19c01:/u01/app/grid/diag/crs/p19c01/crs/trace]$ pwd
/u01/app/grid/diag/crs/p19c01/crs/trace
OCSSD日志:
路径:
[grid@p19c01:/u01/app/grid/diag/crs/p19c01/crs/trace]$ pwd
/u01/app/grid/diag/crs/p19c01/crs/trace
EVMD日志:
路径:
[grid@p19c01:/u01/app/grid/diag/crs/p19c01/crs/trace]$ pwd
/u01/app/grid/diag/crs/p19c01/crs/trace
- 对于数据库的日志和ASM的日志,可以使用如下SQL在数据库或ASM实例中查看相应的目录:
select name,value from v$diag_info;
set line 500
set pagesize 500
col name for a30
col value for a100
select name,value from v$diag_info;
su - grid
sqlplus / as sysasm
4.ASM实例:
在Oracle ASM(Automatic Storage Management)中,有两种类型的日志可以帮助进行故障诊断和性能优化:ASM实例日志和ASM进程日志。下面是关于这两种日志的详细介绍:
- ASM实例日志:
- 日志文件位置:$GRID_HOME/log//asm/
- asm_<INSTANCE_NAME>.log:该日志文件记录ASM实例的启动、关闭以及底层磁盘组操作的信息。它包含了ASM实例的启动流程、磁盘组的创建、扩展和删除操作,以及其他与ASM实例相关的事件和警告信息。
- ASM进程日志:
- 日志文件位置:$GRID_HOME/log//asm/
- asm_a<INSTANCE_NAME>.log:ASM进程的日志文件,例如LMD(ASM实例的后台进程)、GMON(ASM守护进程)和ARB(ASM资源代理进程)等。这些日志文件记录了特定ASM进程的活动和错误信息,可以帮助诊断和解决与进程相关的问题。
这些ASM日志文件位于指定的目录下,并根据ASM实例或进程的名称进行命名。通过查看这些日志文件ASM(Automatic Storage Management)在Oracle数据库中负责管理和提供存储的特殊组件,它生成了一系列的日志文件以记录其运行状态和事件。以下是与ASM相关的常见日志文件:
- asm_<INSTANCE_NAME>.log:ASM实例的日志文件,记录了ASM实例的启动、关闭和底层磁盘组操作的信息。位于$GRID_HOME/log//asm/目录下。
- asm_a<INSTANCE_NAME>.log:ASM进程的日志文件,包含了ASM进程(如LMD、ARB等)的活动日志和错误信息。这些进程在ASM实例中负责执行特定的功能和任务。也位于$GRID_HOME/log//asm/目录下。
这些ASM日志文件记录了ASM实例和相关进程的活动、错误和事件信息,对于故障排查、性能优化和管理ASM非常重要。通过查看日志文件内容,可以了解ASM的运行状况、执行操作的过程以及出现的异常情况。这样有助于诊断和解决与ASM相关的问题,并确保ASM的正常运行和可靠性。
set line 500
set pagesize 500
col name for a30
col value for a100
select name,value from v$diag_info;
5.其实GI的日志也可以通过adrci工具进行查看:
在grid用户下查看:
[grid@p19c01:/home/grid]$ adrci
ADRCI: Release 19.0.0.0.0 - Production on Tue Jan 23 22:08:31 2024
Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved.
ADR base = "/u01/app/grid"
adrci> show home
ADR Homes:
diag/asm/+asm/+ASM1
diag/crs/p19c01/crs
diag/clients/user_grid/host_1746769204_110
diag/clients/user_root/host_1746769204_110
diag/tnslsnr/p19c01/asmnet1lsnr_asm
diag/tnslsnr/p19c01/listener_scan1
diag/tnslsnr/p19c01/listener
diag/asmcmd/user_grid/p19c01
diag/asmcmd/user_root/p19c01
diag/asmcmd/user_oracle/p19c01
diag/kfod/p19c01/kfod
adrci> show log
Choose the home from which to view diagnostic logs:
1: diag/asm/+asm/+ASM1
2: diag/crs/p19c01/crs
3: diag/clients/user_grid/host_1746769204_110
4: diag/clients/user_root/host_1746769204_110
5: diag/tnslsnr/p19c01/asmnet1lsnr_asm
6: diag/tnslsnr/p19c01/listener_scan1
7: diag/tnslsnr/p19c01/listener
8: diag/asmcmd/user_grid/p19c01
9: diag/asmcmd/user_root/p19c01
10: diag/asmcmd/user_oracle/p19c01
11: diag/kfod/p19c01/kfod
Q: to quit
Please select option: