Grid Infrastructure(GI),集群软件是搭建RAC的基础,是RAC逻辑层次当中的集群层,是RAC重要的组成部分,同样也是RAC高可用性的保障。GI包含两个最主要的组件:Clusterware集群软件和ASM存储软件。Clusterware是Oracle的集群解决方案,ASM是Oracle的存储解决方案,这两大方案的数据库共同构成了RAC高可用解决方案。
相对于Oracle单实例来说,部署安装和维护GI都增加了难度,尤其在日常的维护和故障处理过程中,各种日志的查看更加重要,本文主要对Oracle 19c 下的目录结构和路径进行介绍和说明。
- GI软件的安装目录是
[grid@dkf diag]$ echo $ORACLE_HOME/
/u01/app/19.3.0/grid/
- 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
- 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
其中:
在19c中,日志路径发生了非常大的变化,与Oracle集群件相关的调试日志文件存储在/u01/app/grid/diag/crs/dkf/crs/trace目录中。
HAS的日志信息:
[grid@dkf trace]$ ls ohas*
ohasd_cssdagent_grid.trc ohasd_oraagent_grid_2.trm ohasd_oraagent_grid_5.trc ohasd_oraagent_grid_7.trm ohasd.trc
ohasd_cssdagent_grid.trm ohasd_oraagent_grid_3.trc ohasd_oraagent_grid_5.trm ohasd_oraagent_grid.trc ohasd.trm
ohasd_oraagent_grid_1.trc ohasd_oraagent_grid_3.trm ohasd_oraagent_grid_6.trc ohasd_oraagent_grid.trm
ohasd_oraagent_grid_1.trm ohasd_oraagent_grid_4.trc ohasd_oraagent_grid_6.trm ohasd_orarootagent_grid.trc
ohasd_oraagent_grid_2.trc ohasd_oraagent_grid_4.trm ohasd_oraagent_grid_7.trc ohasd_orarootagent_grid.trm
[grid@dkf trace]$
OCSSD日志:
[grid@dkf trace]$ ls ocssd.*
ocssd.trc ocssd.trm
[grid@dkf trace]$
EVMD
[grid@dkf trace]$ ls evm*
evmd.trc evmd.trm evmlogger.trc evmlogger.trm
[grid@dkf trace]$
- 对于数据库的日志和ASM的日志,可以使用如下SQL在数据库或ASM实例中查看相应的目录:
select name,value from v$diag_info;
数据库
SQL> set line 500
SQL> set pagesize 500
SQL> col name for a30
SQL> col value for a100
SQL> select name,value from v$diag_info;
NAME VALUE
------------------------------ ----------------------------------------------------------------------------------------------------
Diag Enabled TRUE
ADR Base /u01/app/oracle
ADR Home /u01/app/oracle/diag/rdbms/dkf006/dkf006
Diag Trace /u01/app/oracle/diag/rdbms/dkf006/dkf006/trace
Diag Alert /u01/app/oracle/diag/rdbms/dkf006/dkf006/alert
Diag Incident /u01/app/oracle/diag/rdbms/dkf006/dkf006/incident
Diag Cdump /u01/app/oracle/diag/rdbms/dkf006/dkf006/cdump
Health Monitor /u01/app/oracle/diag/rdbms/dkf006/dkf006/hm
Default Trace File /u01/app/oracle/diag/rdbms/dkf006/dkf006/trace/dkf006_ora_59261.trc
Active Problem Count 1
Active Incident Count 1
ORACLE_HOME /u01/app/oracle/product/19.3.0/dbhome_1
12 rows selected.
SQL>
ASM实例:
SQL> set line 500
SQL> set pagesize 500
SQL> col name for a30
SQL> col value for a100
SQL>
SQL> select name,value from v$diag_info;
NAME VALUE
------------------------------ ----------------------------------------------------------------------------------------------------
Diag Enabled TRUE
ADR Base /u01/app/grid
ADR Home /u01/app/grid/diag/asm/+asm/+ASM
Diag Trace /u01/app/grid/diag/asm/+asm/+ASM/trace
Diag Alert /u01/app/grid/diag/asm/+asm/+ASM/alert
Diag Incident /u01/app/grid/diag/asm/+asm/+ASM/incident
Diag Cdump /u01/app/grid/diag/asm/+asm/+ASM/cdump
Health Monitor /u01/app/grid/diag/asm/+asm/+ASM/hm
Default Trace File /u01/app/grid/diag/asm/+asm/+ASM/trace/+ASM_ora_58845.trc
Active Problem Count 0
Active Incident Count 0
ORACLE_HOME /u01/app/19.3.0/grid
12 rows selected.
SQL>
- 其实GI的日志也可以通过adrci工具进行查看:
在grid用户下查看:
[grid@dkf diag]$ adrci
ADRCI: Release 19.0.0.0.0 - Production on Fri Dec 23 05:55:02 2022
Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved.
ADR base = "/u01/app/grid"
adrci> show log
Choose the home from which to view diagnostic logs:
1: diag/asm/+asm/+ASM
2: diag/crs/dkf/crs
3: diag/clients/user_grid/host_626160142_110
4: diag/tnslsnr/dkf/listener
5: diag/asmtool/user_grid/host_626160142_110
6: diag/asmcmd/user_oracle/dkf
7: diag/asmcmd/user_grid/dkf
8: diag/kfod/dkf/kfod
Q: to quit
Please select option: