ORACLE RAC GI目录下crfclust.bdb文件过大问题处理

1、问题

朋友找到我问关于crfclust.bdb文件太大的问题,这个问题最近在技术群里也是经常发生!今天就来说说并处理一下这个问题。

2、这是个什么

这个文件和Cluster Health Monitor服务有关,简称CHM。

Cluster Health Monitor是Oracle grid里的一个组件,可持续监控并存储甲骨文集群件及操作系统的资源指标。

该功能默认启用,集群健康监控器具备以下能力:

  1. 协助进行节点驱逐问题分析
  2. 在本地记录所有进程数据
  3. 支持用户定义常驻锁定进程
  4. 监听集群同步服务与通用进程间通信事件
  5. 按类型对进程进行分类
  6. 支持路由追踪、网络状态查询、网络连通性测试等插件采集工具
  7. 支持导出 CSV 格式文件,便于数据分析

集群健康监控器可为甲骨文自治健康框架旗下其他组件提供数据源,例如甲骨文集群健康分析器、甲骨文数据库服务质量管理工具等。

以上是官网关于此服务的介绍,通过这里的描述,我们也清楚的知道了,它就是一个监控进程,crfclust.bdb 文件是Oracle Cluster Health Monitor (CHM) 中 CRF 服务用于存储数据的文件,默认只存储一定时间数据,正常情况不会增长过大,默认大小是1G。但是有在一些平台和版本中由于bug原因导致过大。

例如在11.2.0.4版本中,由于bug 10165314,ORA.CRF服务可能会生成很大的文件,这可能会对$GI_HOME的使用率造成压力。因此,在某些情况下可能需要删除这些文件或者禁止ORA.CRF随ohas启动而启动。

3、管理CHM

通过命令查看该服务器状态ora.crf

复制代码
[root@rac1 ~]# crsctl stat res -t -init
--------------------------------------------------------------------------------
NAME           TARGET  STATE        SERVER                   STATE_DETAILS       
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.asm
      1        ONLINE  ONLINE       rac1                 Started             
ora.cluster_interconnect.haip
      1        ONLINE  ONLINE       rac1                                     
ora.crf
      1        ONLINE  ONLINE       rac1                                     
ora.crsd
      1        ONLINE  ONLINE       rac1                                     
ora.cssd
      1        ONLINE  ONLINE       rac1                                     
ora.cssdmonitor
      1        ONLINE  ONLINE       rac1                                     
ora.ctssd
      1        ONLINE  ONLINE       rac1                 ACTIVE:0            
ora.diskmon
      1        OFFLINE OFFLINE                                                   
ora.evmd
      1        ONLINE  ONLINE       rac1                                     
ora.gipcd
      1        ONLINE  ONLINE       rac1                                     
ora.gpnpd
      1        ONLINE  ONLINE       rac1                                     
ora.mdnsd
      1        ONLINE  ONLINE       rac1                                     
[root@rac1 ~]# 

可通过如下命令查找到对应生成的文件位置

复制代码
[root@rac1 ~]# oclumon manage -get reppath
CHM Repository Path = /g01/app/11.2.0/grid/crf/db/rac1

收集相应的日志,但是读起来不是太友好,需要上工具。。

复制代码
oclumon dumpnodeview -allnodes -v -s "2026-05-19 08:30:00" -e "2026-05-19 09:00:00" > /tmp/chm.txt

我还是更喜欢用OSW工具,比较直观。

4、如何处理

对于这类大文件,可以通过如下命令在oracle的安装目录中搜索,我这的机器上就能找到这个文件比较大。

复制代码
[root@rac1 ~]# find /g01 -type f -size +1024M
/g01/app/11.2.0/grid/crf/db/rac1/crfclust.bdb
[root@rac1 ~]# ls -ltrh /g01/app/11.2.0/grid/crf/db/rac1/crfclust.bdb
-rw-r----- 1 root root 25G May 19 22:19 /g01/app/11.2.0/grid/crf/db/rac1/crfclust.bdb

处理的流程就是:两节点依次清理,清理完一节点,再清理二节点

采用停止ora.crf资源--->删除crfclust.bdb文件--->启动ora.crf资源(或者干关闭这个进程不让它启动)

1、停止服务,root用户执行

复制代码
crsctl stop res ora.crf -init

2、删除文件

复制代码
oclumon manage -get reppath 找到路径
find /g01 -type f -size +1024M  或者通过查大文件找到文件
执行删除rm crfclust.bdb

3、启动服务或永久禁用,root用户执行

复制代码
#关闭
crsctl stop res ora.crf -init
#启动
crsctl start res ora.crf -init
#禁用
crsctl modify resource ora.crf -attr "AUTO_START=never" -init
#启用
crsctl modify resource ora.crf -attr "AUTO_START=always" -init
相关推荐
行业研究员1 小时前
Agent Memory降低Token消耗原理解析
数据库·人工智能·oracle·腾讯云·智能体
yixun_gdas1 小时前
企业网站内容巡查的价值与方法:企业官网的合规与形象管理
数据库·内容运营
见闻小天地1 小时前
空调机房赛莱默B&G冷冻泵/冷却泵的核心技术特性分析
大数据·运维·数据库
辛迪聊物业数字化1 小时前
物业管理系统新手部署与实操指南
数据库·物联网·架构·系统架构
March.s1 小时前
MySQL 数据库原理与实战:从数据管理到 LAMP 建站全解
数据库·mysql
字节跳动的猫2 小时前
LikeShop 种草社区模块二开:笔记发布、话题广场与商品挂载实现
数据结构·数据库
IvorySQL2 小时前
PostgreSQL 日报| PostgreSQL JDBC 安全更新(10 月 10 日)
数据库·postgresql·区块链
晚风叙码2 小时前
MySQL 增删改查(CRUD)完全指南:从入门到面试
数据库·mysql·面试
dishugj2 小时前
HANA集群计划内切换与维护操作
java·linux·数据库
IvorySQL12 小时前
PostgreSQL 日报|修复截断 zstd 备份检测(10 月 9 日)
数据库·postgresql