CRS-4535根本原因是crsd未启动,而非崩溃,根源在于私网通信中断、OCR/Voting Disk不可用或ASM实例未就绪;必须依次验证私网连通性、OCR磁盘组挂载状态及ASM实例运行情况,再针对性处理。
crs-4535 不是 crsd 进程挂了,而是它压根没起来——因为底层依赖断了。强行 crsctl start crs 通常无效,甚至会让状态更混乱。必须先确认私网、ocr/voting disk、asm 实例这三块是否就绪。
OCR 和 CSSD 都依赖私网通信,丢包、延迟高、MTU 不一致或防火墙拦截都会导致 cssd.bin 启动失败,进而让 crsd.bin 无法注册。
ping -I <private_if><peer_private_ip></peer_private_ip></private_if> 测试双向低延迟(≤5ms),别只用 ping 默认路由ifconfig 中私网接口的 mtu 值在所有节点完全一致(推荐统一设为 1500)service iptables stop(RHEL5/6)或 systemctl stop firewalld(RHEL7+)/etc/hosts 是否正确定义了所有节点的 public、private、scan 名称,且无重复或解析冲突crsd 启动前必须能读写 OCR 和 Voting Disk,路径不可达、权限错误或 ASM 磁盘组未 mount 都会直接触发 CRS-4535。
ocrcheck -config 查看 OCR 配置路径,再用 crsctl query css votedisk 确认投票盘状态是否为 ONLINE
grid 用户执行 asmcmd lsdg,重点看 OCR 所在磁盘组的 state 是 MOUNTED、offline_disks 为 0、usable_file_mb > 0ls -l /dev/mapper/ocr* 应显示属主为 grid:asmadmin;若不一致,需同步 udev 规则并重载ocrconfig -showbackup —— 如果备份路径不可写(如 NFS 挂载点异常),也可能阻塞启动即使 OCR 磁盘组已 mount,ASM 实例本身可能未启动,或者 ora.crsd 被卡在 INTERMEDIATE 或 OFFLINE 状态,此时手动拉起无意义。
ps -ef | grep asm_pmon 确认 ASM 实例进程是否存在;若无,尝试 srvctl start asm -n <node></node>
crsctl stat res ora.crsd -init,状态不是 ONLINE 就别急着 start;先查日志:$ORACLE_HOME/log/<hostname>/crsd/crsd.log
ORA-15077 表示 ASM 实例不可达,CLSF-00100 多指向 OCR 设备路径访问失败crsd.log 显示反复尝试连接 ASM 但超时,优先检查 asmcmd 下能否正常 ls OCR 目录,而非仅看磁盘组状态Oracle 11.2.0.1 GI 存在已知 bug:首次 crsctl start crs 可能卡住不动,实际是 ohasd 在等待一个命名管道就绪,需要人工触发。
./crsctl start crs 后,立即另开终端,运行:/bin/dd if=/var/tmp/.oracle/npohasd of=/dev/null bs=1024 count=1
CRS-4123 成功信息最常被忽略的是:CRS-4535 报错时,crsctl check crs 显示 CRS-4529(CSSD online)和 CRS-4533(EVM online)都正常,容易误判为“只有 crsd 有问题”。其实这恰恰说明 CSSD 已退守为单节点模式,不再尝试集群协调——根源一定出在跨节点通信或共享存储层面,而非 crsd 自身二进制文件损坏。