本文详细介绍了Oracle数据库中的DB日志、ASM日志、CRS日志以及RAC相关日志,包括它们的位置、功能和重要性,强调了日志在数据库管理和故障排查中的关键作用。
一、环境准备
1、环境信息
192.168.184.161 rac01
192.168.184.162 rac02
2、集群网络规划
interface | p19c01 | p19c02 |
---|---|---|
public ip | 192.168.184.161 | 192.168.184.162 |
private ip | 1.1.1.1 | 1.1.1.2 |
vip | 192.168.184.171 | 192.168.184.172 |
scan | 192.168.184.181 |
3、查看集群状态
su - grid
crsctl stat res -t
4、进行连接
注意:
实例名称为p19c0
ip为192.168.184.181
SELECT instance_name FROM v$instance;
SELECT value FROM v$parameter WHERE name='service_names';
SELECT name FROM v$database;
二、DB日志
DB日志也就是数据库日志,全称Oracle Database Logs
1、Alert日志
Alert日志记录了数据库的重要信息,如错误信息、日志切换、启动/关闭操作等,不同的节点存放自己的Alert日志。
默认地址:
$ORACLE_BASE/diag/rdbms/<db_unique_name>/<instance_name>/trace/<instance_name>.log
cd /u01/app/oracle/diag/rdbms/p19c0/p19c01/trace
ls
cd /u01/app/oracle/diag/rdbms/p19c0/p19c02/trace
ls
我们发现这里的日志有很多,可以通过如下命令,进行分类:
ls *.tr* | awk -F'_' '{print $1"_"$2}' | sort | uniq -c | sort -nr
目录下以不同前缀开头的日志文件对应着不同的Oracle后台进程,以下是部分常见前缀日志文件的含义和作用:
(0)alert_p19c01【重点关注】
这是数据库实例的核心日志,记录关键操作与异常信息,包括:
实例启动/关闭时间、参数加载情况
数据库错误(ORA-错误代码)
表空间扩展、检查点完成等关键事件
集群资源切换与通信状态。
head -30 alert_p19c01.log
(1)p19c01_ora
开头的日志文件属于 数据库实例的跟踪文件(Trace File),主要用于记录后台进程和用户会话的详细活动及错误信息。
.trc 跟踪文件
.trm 归档后的跟踪文件
head -10 p19c01_ora_9097.trm
head -10 p19c01_ora_9097.trc
(2)p19c01_gcr0~p19c01_gcr2
开头的日志文件,属于 Grid Component Registry (GCR) 相关的日志,主要用于记录集群资源和服务的管理活动。
GCR(Grid Component Registry) 是Oracle Grid Infrastructure的核心组件,负责管理集群中的资源注册、服务状态监控以及节点间通信。
资源状态变化:
如数据库实例、监听器、服务的启动/停止、故障转移等事件。
集群通信:
节点间的心跳检测、资源协调、CRS(Cluster Ready Services)服务的交互。
错误与告警:
资源注册失败、节点故障、服务异常等关键问题的详细信息。
head -10 p19c01_gcr0_8978.trc
head -10 p19c01_gcr0_8978.trm
(3)p19c01_dia0
开头的日志文件是 诊断守护进程(DIAG)的跟踪日志,主要用于记录数据库实例的诊断信息。
是 Oracle 数据库实例的“诊断守护进程”(Diagnostic Daemon),负责监控实例的健康状态、收集诊断信息,并在实例出现异常时生成跟踪文件。
记录实例的启动、关闭、崩溃等关键事件。
捕获后台进程(如 PMON、SMON)的异常行为。
协助排查性能问题或故障(如 ORA-错误、内存泄露等)。
head -10 p19c01_dia0_8824.trc
head -10 p19c01_dia0_8824.trm
(4)p19c01_mz00~p19c01_mz04
mz00、mz01、mz02、mz03可能也是oracle的后台进程
(5)p19c01_mmon
记录的是 Managed Monitor Process(MMON进程)的运行状态和操作记录。
(6)p19c01_m000~p19c01_m004
m000、m001、m002、m004也是oracle的后台进程
(7)p19c01_vktm
日志文件是 虚拟内核时间管理进程(Virtual Kernel Time Manager, VKTM) 的跟踪日志。
时间管理功能:
VKTM进程负责管理数据库实例的虚拟时间(Virtual Time),确保多节点集群环境下的时间同步和协调。具体包括:
维护数据库内部时间戳的准确性。
控制定时任务(如统计信息自动收集、备份调度等)。
在RAC环境中协调节点间的时间一致性,避免因时间差异导致的数据不一致或事务冲突。
调试与诊断:
该日志记录VKTM进程的运行状态、时间同步操作、异常事件(如时间漂移、进程阻塞)等信息,是排查时间相关问题(如事务延迟、归档日志生成异常)的重要依据
(8)p19c01_vkrm
VKRM(Virtual Kernel Resource Manager)是Oracle数据库的后台进程,负责管理内存分配和释放,包括共享池(Shared Pool)、大池(Large Pool)、Java池(Java Pool)等内存结构。它通过与操作系统交互,动态调整内存资源,确保数据库高效运行
(9)p19c01_svcb
日志文件主要用于记录 服务管理进程(Service Control Process)的活动信息。
服务注册与管理:
进程负责管理数据库服务(Service)的注册、状态监控和动态调整。该日志会记录服务在集群中的注册信息、实例关联状态(如服务是否绑定到特定实例)、负载均衡策略等
客户端连接处理:
当客户端通过服务名连接到RAC集群时,进程会协调连接请求的分配,确保请求被路由到可用实例。日志中会记录连接请求的来源、目标实例、负载均衡决策等信息
故障转移与负载均衡:
进程会监控实例健康状态,当某个实例故障时,会触发服务的重新路由。日志中会记录故障转移事件、负载均衡调整(如动态调整服务权重)等操作
(10)p19c01_rbal
日志文件是ASM(自动存储管理)实例中RBAL后台进程的跟踪日志。
ASM磁盘组管理:
RBAL(Re-Balance Master Process)是ASM实例的核心进程,负责监控和管理ASM磁盘组的动态平衡操作。当磁盘组发生扩容、缩容或磁盘故障时,RBAL会触发数据块的重新分布(Rebalance),确保数据在磁盘组中的均匀分布和高可用性。
资源协调:
在RAC环境中,RBAL还负责协调多个节点对共享存储的访问,确保集群中各节点对ASM磁盘组的操作一致性。
(11)p19c01_ofsd
属于Oracle文件系统守护进程(Oracle File System Daemon的跟踪日志。
作用:
(Oracle File System Daemon)是Oracle RAC集群中负责管理文件系统事件的后台进程,主要处理以下操作:
文件删除、重命名等元数据变更。
监控共享存储设备(如ASM磁盘组、OCR/Voting Disk)的状态。
协调集群节点间的文件系统一致性。
日志记录内容:
文件系统操作的详细日志(如文件删除、权限变更)。
存储设备异常(如磁盘故障、I/O错误)。
进程启动/停止、资源竞争等事件。
(12)p19c01_mark
日志文件属于数据库实例的 跟踪标记文件,主要用于记录特定操作或事件的时间点标记,帮助故障诊断和性能分析。
可能表示该文件是某个后台进程(如PMON、SMON等)或特定操作(如启动、关闭、检查点)生成的标记文件,用于记录关键操作的时间点或状态。
(13)p19c01_lreg
日志文件是监听器注册进程(Listener Registration Process,LREG)的跟踪日志,主要用于记录实例与监听器之间的动态服务注册信息
动态服务注册
LREG进程负责将数据库实例的服务信息(如服务名、实例名、负载信息等)动态注册到Oracle监听器(Listener)。在RAC环境中,每个节点实例启动后,LREG会自动将本节点信息注册到监听器,确保客户端请求能正确路由到可用节点。
故障诊断
该日志记录了LREG进程的关键操作和错误信息,例如:
监听器连接失败(如网络问题、监听器未启动);
服务注册冲突或权限问题;
实例状态变化(如节点加入/退出集群)。
维护高可用性
在RAC集群中,LREG会定期更新监听器中的服务状态,支持负载均衡和故障转移功能。若日志中显示异常,可能导致客户端无法连接到特定节点
(14)p19c01_lmon
日志文件是Lock Monitor Process(LMON)的跟踪日志,主要用于记录与集群锁管理、节点成员状态监控及故障恢复相关的核心操作信息。
LMON(Lock Monitor)是Oracle RAC中的关键后台进程,负责:
全局资源管理:
维护全局队列服务(GCS)和全局资源目录(GRD),协调跨节点的锁请求与释放。
集群成员监控:
跟踪节点状态变化(如节点加入/退出集群),触发实例恢复或资源重新分配。
故障恢复:
在节点故障时,协调其他节点接管资源,确保集群高可用性
(15)p19c01_lmhb
是Oracle进程名的缩写,对应License Management Housekeeping Background进程,负责许可证管理的后台维护任务。
许可证状态监控:
记录许可证的使用情况、分配状态及过期提醒,例如CPU核心数、并发用户数等资源的监控。
维护操作记录:
包括许可证文件的更新、校验、错误处理(如许可证文件损坏或无效)等操作。
错误与警告:
当许可证资源不足或配置异常时,会生成告警信息
(16)p19c01_lmd0
日志文件是 Global Enqueue Service Daemon (LMD) 进程的跟踪日志,主要用于记录集群锁管理相关的操作和事件。
全局锁管理:
LMD(Lock Manager Daemon)是Oracle RAC的核心进程之一,负责协调不同节点间的资源锁请求(如行级锁、表级锁),确保数据在集群中的一致性。
死锁检测:
监控实例间的锁冲突,检测并处理死锁场景。
实例间通信:
通过私有网络(如Interconnect)与其他节点的LMD进程通信,传递锁状态信息。
(17)p19c01_lgwr【次重点关注】
日志文件是LGWR(Log Writer)进程的跟踪日志,主要用于记录与重做日志写入相关的操作和事件。
LGWR进程负责将重做日志缓冲区(Redo Log Buffer)的内容写入到在线重做日志文件(Online Redo Log Files)中。该日志文件记录了以下关键操作:
事务提交时的日志写入:
当用户提交事务时,LGWR必须先将相关重做日志写入磁盘,以确保事务持久性(ACID特性中的Durability)。
日志缓冲区管理:
根据触发条件(如缓冲区1/3满、达到1MB阈值或三秒超时)执行写入操作。
与DBWR进程的协调:
在DBWR(数据库写进程)将脏块写入数据文件前,确保相关重做日志已落盘
(18)p19c01_ipc0
日志文件属于进程间通信(IPC)跟踪日志,主要用于记录数据库实例与集群节点之间的通信活动及资源管理信息。
IPC通信监控:
记录实例与集群节点之间的通信状态,包括共享内存、信号量等资源的分配与使用情况。
故障诊断:
当集群节点间通信异常(如网络延迟、资源竞争)时,日志会记录错误代码、堆栈跟踪等关键信息,帮助定位问题。
性能分析:
通过分析IPC资源的使用模式,可优化集群配置(如调整共享内存大小、信号量参数)。
(19)p19c01_gen0
日志文件属于数据库实例的跟踪日志(Trace File),主要用于记录后台进程gen0的信息。
gen0是Oracle数据库的后台进程之一,主要负责以下任务:
生成控制文件:
在数据库启动时生成临时控制文件。
管理重做日志:
参与重做日志文件的创建和维护。
处理实例恢复:
在实例崩溃后协助恢复操作。
调试信息记录:
记录进程运行中的异常或调试信息
(20)p19c01_fenc
日志文件主要用于记录与节点隔离(Fencing)操作相关的信息,记录了与节点隔离相关的操作细节,例如:
节点驱逐(Node Eviction)事件的触发原因和时间戳。
资源释放或抢占的详细流程。
与其他节点通信失败的错误信息。
共享存储访问权限的变更记录。
Fencing机制:在RAC集群中,当某个节点发生故障(如网络中断、资源争用或状态异常)时,集群会触发Fencing机制,阻止该节点继续访问共享存储(如ASM磁盘组),以防止数据损坏或脑裂(Split Brain)问题
(21)p19c01_diag
日志文件属于数据库实例的诊断跟踪文件,主要用于记录实例运行过程中的详细诊断信息。
后台进程的详细运行信息,包括错误事件、内部操作、SQL跟踪等,用于排查实例级故障(如进程异常、资源争用、节点通信问题等)
(22)p19c01_dbrm
日志文件主要用于记录 数据库资源管理器(Database Resource Manager)的运行信息。
资源管理策略:
该日志记录了数据库资源管理器(CDB/PDB级别的资源计划)的执行情况,包括资源分配策略的激活、调整及执行结果。
实例级监控:
在RAC环境中,dbrm日志会跟踪各实例的资源使用情况(如CPU、内存、I/O),确保集群资源的均衡分配。
异常事件记录:
当资源管理策略冲突、计划失效或资源争用时,日志会记录相关错误或警告信息,便于排查问题。
(23)p19c01_asmb
日志属于ASM客户端进程(ASMB)的跟踪日志,主要用于记录数据库实例与ASM(Automatic Storage Management)实例之间的交互信息。
ASM客户端进程管理:
ASMB(ASM Background)是数据库实例中负责与ASM实例通信的后台进程,用于管理存储操作(如文件分配、磁盘组状态同步等)。
存储操作记录:
记录数据库实例通过ASM客户端对存储资源的访问、分配及异常情况,例如磁盘组操作、文件创建/删除、I/O错误等。
(24)p19c01_tt00~p19c01_tt03
临时表空间相关进程的日志文件
后台进程诊断:
是 Oracle 后台进程的跟踪文件标识,通常与临时表空间(Temporary Tablespace)相关的后台进程相关联(如tt进程)
会话级调试信息:
记录 SQL 操作、事务处理、锁竞争、错误堆栈等运行时详细信息,用于排查数据库性能问题或故障。
自动化诊断:
属于 ADR(Automatic Diagnostic Repository)的一部分,与 Oracle 的故障诊断框架集成。
(25)p19c01_dbw0【次重点关注】
日志文件是数据库写入进程(DBW0)的跟踪文件,主要用于记录该进程的运行状态、错误信息及操作细节。
DBW0进程(Database Writer Process):DBW0是Oracle后台进程之一,负责将数据库缓冲区中的脏数据块(已修改但未写入数据文件的块)写入数据文件。其核心功能包括:
检查点(Checkpoint):
配合LGWR进程,在检查点时将内存中的脏数据块批量写入磁盘。
响应写入请求:
当缓冲区空间不足或达到写入阈值时,主动将脏数据块刷新到磁盘。
归档日志切换:
在归档日志切换时确保数据一致性
(26)p19c01_ping
日志文件主要与节点间通信监控相关,具体作用如下:
节点健康检测:
该日志记录了Oracle RAC集群中节点间的心跳检测(Ping)信息,用于实时监控节点间的网络连通性和响应状态。
故障排查:
当节点间通信出现延迟、丢包或网络中断时,该日志会记录详细的错误信息(如超时、连接失败等),帮助DBA快速定位网络故障
(27)p19c01_rs00
日志文件属于 跟踪日志(Trace File),主要用于记录与 RAC服务(Resource Service) 或 资源协调(Resource Coordination) 相关的运行时信息。
通常与 RAC服务(RAC Service) 或 资源管理(Resource Management) 相关。
服务注册与负载均衡:
RAC服务在集群中的注册、负载均衡策略的执行(如SQL*Net注册、服务优先级调整等)。
节点间通信:
RAC节点之间的资源协调、心跳检测、锁管理等操作。
故障恢复:
节点故障切换(Failover)时的资源重新分配、服务迁移记录。
资源状态监控:
如ASM磁盘组状态、集群资源(如数据库实例、监听器)的启动/停止事件
(28)p19c01_pmon【次重点关注】
PMON(Process Monitor Process)进程的跟踪文件,主要用于记录PMON进程的运行状态和操作记录。
进程监控与清理
PMON负责监控用户进程和后台进程的运行状态,清理非正常终止的进程(如用户会话异常断开或服务器崩溃),释放其占用的资源(如锁、内存、文件句柄等)。
事务恢复
当用户进程异常终止时,PMON会回滚该进程未提交的事务,确保数据库一致性。
集群环境下的协调
在RAC集群中,PMON会与其他节点协作,清理故障节点遗留的资源(如分布式事务、锁等),保障集群高可用性
(30)p19c01_lms0
该日志记录了LMS进程的运行细节
数据块传输事件:
如块请求、传输状态、锁授权等。
锁冲突与等待:
记录因全局锁引发的等待事件(如 gc buffer busy)。
DRM操作记录:
动态资源重分配(Remastering)的触发与执行日志。
性能指标:
块传输延迟、队列深度等性能相关的统计信息。
错误与异常:
如网络通信失败、资源争用超时等问题的诊断信息
(31)p19c01_rcbg
日志文件属于数据库实例的后台进程跟踪日志,主要用于记录 资源控制后台进程(Resource Control Background Process) 的运行状态和相关操作。
资源监控与管理
记录实例对CPU、内存、I/O等资源的使用情况,以及RAC集群中多实例间的资源分配策略。
全局缓存管理
RAC环境中,rcbg进程可能参与全局缓存(Global Cache)的管理,例如数据块的传输、冲突检测(Cache Fusion)等。
集群通信与协调
记录实例间通过私有网络(Private Interconnect)的通信状态,如心跳检测、锁管理、分布式事务协调等。
故障诊断与调试
记录异常事件(如进程崩溃、资源争用)的详细信息,便于排查集群故障。
(32)p19c01_lck0~p19c01_lck1
日志文件是锁进程(Lock Process)的跟踪日志,主要用于记录数据库锁管理相关的活动和异常信息。该日志记录锁进程在运行过程中的详细操作,包括锁的获取、释放、死锁检测、资源争用等。
锁进程(LCKn)是Oracle数据库的锁进程,负责管理数据库对象的锁机制(如表锁、行锁、分布式事务锁等),确保并发操作的数据一致性。
在RAC环境中,锁进程还协调多个实例之间的资源访问冲突,例如通过Global Enqueue Service (GES) 管理全局锁。
(33)p19c01_jp00
日志文件属于Job Queue进程(JP0n)的跟踪文件,主要用于记录与数据库作业调度、批量任务处理相关的活动和错误信息。
Job Queue进程(JP0n)JP00是Oracle后台进程之一,负责执行以下任务:
调度作业:
如通过DBMS_SCHEDULER创建的定时任务。
批量处理任务:
如数据导入导出、ETL流程等。
分布式事务恢复:
在RAC环境中协调节点间的事务一致性。
资源管理:
监控和优化作业执行的资源使用(如CPU、内存)
(34)p19c01_clmn
日志文件主要用于记录与集群成员通知(Cluster Membership Notification)相关的活动。
集群成员状态监控:
该日志记录RAC集群中节点的加入、离开或状态变化事件(如节点故障、重启等)。例如,当某个节点因故障退出集群时,clmn日志会记录相关通知和协调过程。
心跳检测与通信:
RAC节点间通过私有网络进行心跳检测,clmn日志可能记录心跳包的发送/接收状态,以及节点间通信异常(如网络延迟、断连等)。
资源协调:
在集群资源(如ASM磁盘组、服务实例)动态调整时,该日志可能记录资源分配和负载均衡的决策过程。
(35)p19c01_arc0~p19c01_arc3
日志文件主要用于记录数据库归档进程(ARCn)的活动信息。
归档进程监控:
arc0是Oracle的归档进程(Archiver Process),负责将在线重做日志文件(Online Redo Logs)归档到指定位置(如磁盘或远程存储)。该日志记录归档进程的运行状态、操作细节及错误信息。
关键操作记录:
包括归档切换(Archived Log Switch)、归档文件生成路径、归档失败原因(如磁盘空间不足、权限问题)等
(36)p19c01_ckpt
日志文件是检查点进程(CKPT)的跟踪文件,用于记录CKPT进程在数据库实例中的关键操作和事件。
CKPT(Checkpoint Process)是Oracle数据库的关键后台进程,主要职责包括:
协调检查点操作:
触发DBWn(数据库写进程)将内存中的脏数据块写入数据文件。
维护一致性状态:
通过更新控制文件和数据文件头中的检查点信息,确保数据库在崩溃后能快速恢复。
优化恢复时间:
通过增量检查点机制,缩短实例恢复所需的日志扫描范围。
(37)p19c01_lg00~p19c01_lg01
日志文件属于LGWR(Log Writer Process)进程的跟踪日志,主要用于记录数据库实例的日志写入活动。
LGWR进程的核心职责:
将内存中的重做记录(Redo Entries)从日志缓冲区(Log Buffer)写入到在线重做日志文件(Online Redo Log Files)。
在日志切换(Log Switch)时,协调归档进程(ARCn)将已填满的日志组归档到归档日志文件(Archive Log Files)。
(38)p19c01_imr0
日志文件主要用于记录 In-Memory Process(IMR)后台进程的运行状态和操作信息。
IMR(In-Memory Repopulation)是Oracle In-Memory选件相关的后台进程,主要职责包括:
数据加载与维护:
将数据库对象(如表或分区)的列式数据加载到内存中,支持实时查询加速。
内存优化:
监控内存列存储(In-Memory Column Store)的使用情况,并根据需要动态调整内存分配。
故障恢复:
在实例崩溃或内存数据失效时,自动重新加载数据到内存
(49)p19c01_cjq0
日志文件是Job Queue Coordinator进程(CJQ0)的跟踪日志,主要用于记录与数据库作业调度相关的活动和错误信息。
CJQ0进程是Oracle的后台进程之一,全称Job Queue Coordinator,负责管理数据库中的调度作业(如通过DBMS_SCHEDULER创建的作业)。
在RAC环境中,CJQ0进程会协调多个实例之间的作业执行,确保分布式作业的负载均衡和故障转移
(40)p19c01_rms0
日志文件属于 RMAN(Recovery Manager)后台进程的跟踪日志,主要用于记录与数据库恢复、备份及归档日志管理相关的操作细节。
记录RMAN执行的备份、恢复、归档日志应用等操作的详细过程。
记录RMAN与数据库实例之间的交互信息(如通道分配、数据文件处理等)。
记录异常或错误信息(如备份失败、恢复中断等)。
(41)p19c01_qm02、p19c01_qm03、p19c01_qm05
该日志记录了QM进程在运行期间的详细活动、错误事件、死锁检测以及与队列相关的性能指标,例如消息滞留、超时、死锁等。
通常指代Queue Monitor(QM)进程,属于Oracle高级队列(Advanced Queuing, AQ)功能的核心组件。QM进程负责监控和管理队列消息的传递、消费状态及异常处理
(42)p19c01_smon【次重点关注】
日志文件属于系统监视器进程(SMON)的跟踪文件,主要用于记录该进程的运行状态和关键操作。
实例恢复(Instance Recovery)
当数据库实例异常终止(如节点宕机)后,SMON负责读取重做日志(Redo Log),将未提交的事务回滚,并恢复已提交但未写入数据文件的事务。
在RAC环境中,若某个节点故障,SMON会协调其他节点完成实例恢复,确保集群整体可用性。
数据文件维护
清理临时段(Temporary Segments)和撤销段(Undo Segments)。
合并撤销表空间中的碎片,优化存储效率。
集群资源管理
在RAC架构下,SMON会处理跨节点的数据文件状态同步,例如清理故障节点遗留的临时文件或资源锁
(43)p19c01_ppa5~p19c01_ppa7
日志属于 数据库实例的跟踪文件(Trace File),主要用于记录特定进程或操作的详细运行信息。
Parallel Processing Agent:可能与并行处理相关,例如并行查询(Parallel Query)或分布式任务的协调
(44)p19c01_p000~p19c01_p001
日志文件属于 并行服务器进程(Parallel Server Process) 的跟踪文件,是 Oracle 数据库的并行服务器进程(Parallel Server Process),用于处理并行查询操作。
当数据库执行并行查询时,会启动多个Pn进程,例如:p000、p001等)来分担负载,提升查询效率。
(45)p19c01_mmnl
日志文件是MMNL(Manageability Monitor Light)后台进程的跟踪日志,主要用于记录与数据库性能监控和自动化诊断相关的活动。
ASH数据管理:
MMNL负责将内存中的活动会话历史(Active Session History, ASH)数据刷新到磁盘,确保性能监控数据的持久化。
ADDM支持:
为自动数据库诊断监控(ADDM)提供基础数据,帮助生成性能分析报告。
统计信息收集:
辅助处理自动优化器统计信息收集等任务。
(46)p19c01_scm0
服务组件管理(Service Component Management):记录与集群服务(如SCAN监听、服务注册)相关的操作信息
进程级诊断:
如实例启动/关闭、资源切换(如DRM动态重配置)、锁冲突或会话异常等场景的详细跟踪。
错误排查:
若出现实例级故障(如进程崩溃、通信中断),该日志会记录具体错误堆栈及上下文信息
(47)p19c01_q003~p19c01_q004
日志文件属于 并行查询(Parallel Query)进程的跟踪文件
该日志记录了并行查询进程的执行细节,包括:
SQL语句的并行执行计划。
分区扫描、数据分布等操作的调试信息。
资源竞争、锁冲突等异常事件。
(48)p19c01_aqpc
日志文件主要用于记录与Oracle高级队列(Advanced Queuing, AQ)相关的进程协调器(Process Coordinator)的操作和调试信息。
AQ组件跟踪:
aqpc日志属于Oracle高级队列服务的进程协调器(AQ Process Coordinator),负责记录AQ消息队列的调度、协调及异步通信过程中的操作细节
消息处理记录:
包括消息的入队(Enqueue)、出队(Dequeue)操作、队列状态变更、错误事件(如消息传递失败或超时)等关键信息
2、审计日志
默认地址:
$ORACLE_BASE/admin/<db_unique_name>/adump
可通过如下命令进行查询当前审计日志存放目录:
sqlplus / as sysdba
show parameter audit;
cd /u01/app/oracle/admin/p19c0/adump
ls
我们发现这里的日志有很多,可以通过如下命令,进行分类:
ls *.au* | awk -F'_' '{print $1"_"$2}' | sort | uniq -c | sort -nr
(1)p19c01_ora
(2)p19c01_m000~p19c01_m004
(3)p19c01_j002
三、ASM日志
1、ASM Alert日志
默认地址:
$ORACLE_BASE/diag/asm/+asm/+ASM1/trace
查询日志存放地址
SELECT value FROM v$diag_info WHERE name = 'Diag Trace';
cd /u01/app/grid/diag/asm/+asm/+ASM1/trace
ls
我们发现这里的日志有很多,可以通过如下命令,进行分类:
ls *.tr* | awk -F'_' '{print $1"_"$2}' | sort | uniq -c | sort -nr
(0)alert_+ASM1【重点关注】
是 ASM(Automatic Storage Management)实例的警报日志,主要用于记录ASM实例的运行状态、关键事件、错误信息及警告。
记录ASM实例活动:
包括启动、关闭、磁盘组操作(如创建/删除磁盘组、磁盘故障切换等)。
错误与警告追踪:
例如磁盘I/O延迟、磁盘组不可用、存储配置错误等。
诊断集群存储问题:
通过分析日志内容,可快速定位ASM相关的故障(如磁盘故障、存储配置错误等)
(1)+ASM1_ora
日志文件是ASM实例的诊断日志,主要用于记录ASM实例的运行状态、错误信息和后台进程活动。
(2)+ASM1_dia0
可能与诊断(diagnostic)相关,例如诊断会话(diagnostic session)或特定诊断进程的标识
(3)+ASM1_ufg
可能代表“User Function Group”或特定ASM功能模块的缩写。
(4)+ASM1_rbal
开头的日志文件是ASM(Automatic Storage Management)实例的Rebalance进程跟踪文件,主要用于记录ASM磁盘组的数据重新平衡操作的详细信息。
数据重新平衡:
当磁盘组添加/删除磁盘、扩容或修复故障磁盘时,rbal会自动调整数据分布,确保磁盘组内数据均匀存储。
负载均衡:
通过动态调整数据分布,优化I/O性能和磁盘利用率。
故障恢复:
在磁盘故障后,rbal会修复数据冗余(如Mirror副本)以恢复磁盘组的高可用性。
(5)+ASM1_lms0
属于ASM(Automatic Storage Management)实例的跟踪日志,主要用于记录锁管理服务(Lock Manager Server, LMS)进程的活动信息。
锁管理:
LMS进程负责管理RAC环境中实例间的锁(Lock)和全局资源的协调,确保多节点对共享存储(如ASM磁盘组)的访问一致性。
缓存融合(Cache Fusion):
在RAC架构中,LMS进程处理数据块的多版本控制和缓存同步,避免数据冲突。
跨实例通信:
LMS进程通过私有网络(如ASM&Private网段)与其他节点的LMS进程通信,同步锁状态和缓存信息
(6)+ASM1_lmon
+ASM1_lmon开头的日志文件是 ASM实例的锁监控进程(LMON)生成的跟踪日志,主要用于记录集群资源协调、锁管理、集群成员状态同步等信息。
锁监控(LMON)核心功能:
该日志记录了 Lock Monitor进程(LMON) 的活动,负责管理集群全局资源和锁的同步,例如:
集群节点间的通信状态;
全局资源(如ASM磁盘组、数据库实例)的锁获取与释放;
集群成员变更(如节点加入/退出)时的协调动作;
心跳检测和脑裂(split-brain)防护机制的执行情况 。
故障诊断依据:
当集群出现资源争用、节点失联、ASM磁盘组挂载失败等问题时,可通过这些日志分析根本原因,例如:
锁超时(ORA-29740)
节点驱逐事件;
网络通信异常。
(7)+ASM1_lmhb
属于ASM(Automatic Storage Management)实例的跟踪日志,主要用于记录与锁管理(Lock Manager)相关的心跳检测(Heartbeat)信息。
锁管理心跳检测:
是Oracle进程名的缩写,全称为Lock Manager Heartbeat。该进程负责监控ASM实例之间的锁资源状态,确保集群节点间的数据一致性。
资源协调:
在RAC环境中,多个节点可能同时访问共享存储,
进程通过心跳机制检测锁资源的可用性,避免资源竞争或死锁。
故障诊断:
日志中会记录锁管理相关的异常事件(如超时、资源冲突),帮助排查集群通信问题或资源争用问题。
(8)+ASM1_lmd0
属于ASM(Automatic Storage Management)实例的跟踪日志,主要用于记录与锁管理(Lock Management)相关的进程活动。
代表Oracle后台进程 Lock Manager Daemon (LMD) 的进程ID,负责管理ASM实例中的锁资源。
锁管理:
LMD进程负责协调ASM实例对共享存储资源(如磁盘组)的访问,避免多个节点或进程之间的资源冲突。日志中会记录锁的分配、释放、等待事件等信息。
资源协调:
在RAC集群中,多个节点需要共享ASM磁盘组,LMD进程通过锁机制确保数据一致性。例如,当一个节点修改磁盘组元数据时,LMD会锁定相关资源,防止其他节点同时操作。
错误与调试:
日志中可能包含锁冲突、超时、资源竞争等异常信息,是排查ASM性能问题或故障的重要依据。
(9)+ASM1_gmon【次重点关注】
是ASM实例的后台进程GMON(Grid Monitor Process)生成的跟踪日志,主要用于记录ASM磁盘组管理相关的操作和监控信息。
GMON进程是ASM实例的关键后台进程,主要负责:
监控磁盘组状态:
持续检查ASM磁盘组可用性、健康状况及I/O负载。
处理磁盘动态操作:
如在线添加/删除磁盘、磁盘组重新平衡(Rebalance)等操作记录。
维护元数据一致性:
确保磁盘组的元数据(如文件分布、空间分配)与实际存储同步。
(10)+ASM1_gen0【次重点关注】
ASM(Automatic Storage Management)实例的 Generic Monitor(通用监控)进程生成的跟踪文件。
Generic Monitor (GEN0) 是ASM实例的后台进程之一,主要负责:
通用事件监控:
记录ASM实例运行时的常规操作和状态变化。
资源使用统计:
跟踪ASM实例的内存、CPU、I/O等资源消耗。
辅助诊断:
捕获与ASM元数据操作、集群通信相关的非关键事件。
集群协调:
在RAC环境中,协助监控节点间的状态同步(如节点心跳检测)。
(11)+ASM1_gcr0
(12)+ASM1_diag
(13)+ASM1_ckpt【次重点关注】
(14)+ASM1_asmb【次重点关注】
(15)+ASM1_lck0
(16)+ASM1_imr0
(17)+ASM1_scm0
(18)+ASM1_mman
(19)+ASM1_lgwr
(20)+ASM1_pmon
(21)+ASM1_ppa7
(22)+ASM1_nfg
(23)+ASM1_vktm
(24)+ASM1_clmn
2、ASM审计日志
ASM的审计日志默认存储在数据库的审计目录中,而非ASM自身的跟踪文件中。
可通过如下命令进行查询当前审计日志存放目录:
sqlplus / as sysdba
show parameter audit;
cd /u01/app/oracle/admin/p19c0/adump
ls
查看和ASM相关的审计内容
cd /u01/app/oracle/admin/p19c0/adump/
ll -rt
cat p19c01_ora_43658_20250516143303612467281636.aud | grep 'mount'
grep "mount" /u01/app/oracle/admin/p19c0/adump/p19c01_ora_*.aud
四、CRS以及CRSD日志
1、目录查询方式
(1)查看asmcmd版本信息
查看ASM(Automatic Storage Management)命令行工具 asmcmd 的版本信息
su - grid
asmcmd -V
(2)显示ASM实例的详细版本信息
显示ASM实例的详细版本信息,包括组件版本和补丁信息。
asmcmd showversion
(3)进入 ADRCI
进入 ADRCI(Automatic Diagnostic Repository Command Interpreter) 命令行工具,用于管理Oracle的诊断日志(如数据库、ASM、CRS的日志)。
adrci
(4)列出所有可用的诊断目录
show home
(5)最后拼接的目录
cd /u01/app/grid/diag/crs/p19c01/crs/trace
ls
2、日志类别
(1)核心日志文件
(2)跟踪文件(.trc)分类说明
3、补充adrci相关
(1)show problems
这是 adrci 的一个子命令,用于显示 ADR 中记录的数据库问题。这些问题通常是 Oracle 自动捕获的严重错误(如 ORA-600 内部错误、ORA-07445 崩溃等)。
adrci
show problems