跳转到主内容
极星编程网:以代码为星,赴技术山海!

如何安装Oracle 12c RAC_Grid Infrastructure预安装检查

运行 runcluvfy.sh 前必须满足4个前提条件:grid用户对所有节点/tmp有读写权限;各节点时间偏差≤1s;/etc/hosts包含完整一致的public、private、VIP、SCAN四类地址;grid用户已配置节点间免密SSH。 运行
runcluvfy.sh
前必须确认的 4 个前提条件 不满足任意一条,
runcluvfy.sh
会直接报错退出,不是跳过、不是警告,是中断。常见现象是卡在
verifying user equivalence
或抛出
prvf-9802: failed to scan the network
。
grid
用户需对所有节点的
/tmp
有读写权限(不是
root
,也不是
oracle
) 所有节点时间偏差必须 ≤ 1s(
ntpq -p
看
offset
,别只看系统时间是否同步) 所有节点的
/etc/hosts
必须包含完整且一致的 public、private、VIP、SCAN 四类地址条目(顺序无关,但缺一不可)
grid
用户在各节点间必须已配置免密 SSH(
ssh node1 date
和
ssh node2 date
都不能输密码,且不能触发首次连接提示)
runcluvfy.sh stage -pre crsinst
的真实作用范围 这个命令不是“装 Grid 前的万能体检”,它只校验 RAC 启动依赖的最小集合:网络连通性、存储可见性、内核参数、用户资源限制、时间同步、SSH 等。它不检查 ASM 磁盘权限、OCR/Voting Disk 路径是否存在、或是否已被其他集群占用。 若你用的是 udev 绑定磁盘,
runcluvfy.sh
不验证
OWNER/GROUP
是否为
grid:asmadmin
,只查设备文件能否被
grid
用户
ls -l
到 若 OCR 存在但属主是
root
,它不会报错;但后续
root.sh
会失败并留一堆残留 它默认不扫描 NFS 存储(哪怕你计划用 NFS 做 OCR),除非显式加
-nfs
参数 输出里的
PASS
不代表一定能建集群,只是“没发现当前已知硬伤” 遇到
PRVF-5636: The NTP daemon is not running
别急着启 ntpd Oracle 12c RAC 官方明确支持
chronyd
,但
runcluvfy.sh
默认只认
ntpd
进程名。强行启
ntpd
可能和已有
chronyd
冲突,导致时间漂移更大。 先确认实际服务:
systemctl status chronyd
或
ps -ef | grep chrony
若
chronyd
正常运行且已同步(
chronyc tracking
显示
Leap status: Normal
),可跳过该检查:
runcluvfy.sh ... -fixup -verbose
会自动忽略 或者临时骗过检查:
ln -s /usr/bin/chronyd /usr/sbin/ntpd
(仅限预检,安装后删掉) 注意:RHEL 7+ 默认禁用
ntpd
,硬启可能失败或被 systemd 拦截 检查结果里出现
WARNING
但没
ERROR
,能继续安装吗? 能,但得看哪类 WARNING。有些是设计如此,有些是埋雷信号。
PRVF-5431: DHCP-assigned IP address found
→ 必须改,RAC 不允许任何节点用 DHCP
PRVF-5645: Node connectivity passed for subnet
→ 实际是 INFO,不是 WARNING,可忽略
PRVF-5412: Time drift on node X is Y ms
→ 若 Y > 1000ms,虽标 WARNING,但
root.sh
会拒绝执行
PRVF-5436: DNS response time is high
→ SCAN 解析慢会导致集群启动超时,建议优化 DNS 或加 hosts 条目 真正麻烦的是那些没报错、也没警告,但磁盘路径权限不对或多路径 alias 不一致的情况——
runcluvfy.sh
根本不扫这些,等
root.sh
执行到 80% 才崩,回退成本极高。

相关文章