如何在Oracle 19c RAC中无缝升级GI集群底层操作系统

千杰君_5728

千杰君_5728

2026-10-24

927人浏览

原创

oracle 19c rac gi集群os升级必须停crs,因gi深度绑定内核、udev、systemd等组件,跨大版本升级(如ol7→ol8)会导致ohasd加载失败、ocssd崩溃、asm磁盘识别失效,且未停crs直接升级90%触发ora-15032/15063无法在线恢复。

如何在oracle 19c rac中无缝升级gi集群底层操作系统

不能“无缝”升级Oracle 19c RAC的GI集群底层操作系统——OS升级必然中断集群服务,所谓“无缝”只存在于单节点滚动停机+严格验证的可控窗口内。

为什么必须停CRS才能升级OS

Grid Infrastructure(GI)深度绑定内核模块、udev规则、systemd服务、网络命名空间和时间同步机制。CentOS 7 → Oracle Linux 8这类主版本升级会替换glibc、kernel、systemd等核心组件,直接导致crsctl无法加载ohasd,ora.cssd进程崩溃,ASM磁盘组丢失识别。实测中未停CRS就执行leapp upgrade,90%概率触发ORA-15032 + ORA-15063,且无法在线恢复。

  • GI进程依赖特定内核ABI,跨major version的kernel升级后,ocssd.bin会因符号缺失直接core dump
  • OL7的network-scripts与OL8的NetworkManager配置冲突,不清理会导致VIP漂移失败
  • udev规则文件路径和语法在OL8中变更,未重载会导致ASM disk路径失效(如/dev/oracleasm/消失)

必须提前完成的3项关键检查

跳过任一检查,升级后大概率卡在crsctl start crs阶段,需手动干预甚至重装GI。

QuantOracle
QuantOracle

63个确定性量化金融计算器 + 10个通过MCP的复合工作流。期权定价、Greeks、奇异衍生品、风险指标、投资组合优化……

下载
  • 确认所有节点已配置root SSH互信:ssh root@node2 date 必须无密码返回时间,否则leapp无法同步升级状态
  • 验证OCR磁盘组兼容性:SELECT name, compatibility, database_compatibility FROM v$asm_diskgroup WHERE name = 'OCR'; —— 若compatibility低于19.0.0.0,升级后GI无法挂载OCR,需先执行ALTER DISKGROUP OCR SET ATTRIBUTE 'compatible.asm'='19.0.0.0';
  • 检查AHF(Automatic Health Framework)版本:低于v23.4.0的AHF在OL8上无法启动tfactl,必须升级后再操作,否则健康诊断功能失效

升级时最关键的两个操作顺序

顺序错一步,整个RAC集群将无法自愈启动。

  • 先执行crsctl stop crs -f(所有节点),再运行leapp preupgrade;若反过来,leapp会检测到活跃的CRS进程并拒绝继续
  • OS重启后,必须用root用户先启动GI:/u01/app/19.0.0/grid/bin/crsctl start crs,再切回grid用户验证crsctl check cluster;若先用grid用户执行,因环境变量未加载完整,会报CRS-4640: Oracle High Availability Services is not running

升级后最易被忽略的ASM磁盘识别问题

即使crsctl check cluster显示正常,ASM实例也可能无法识别磁盘组——这不是权限问题,而是udev规则未生效。

  • 执行ls -l /dev/asm*,若无输出或设备名不匹配(如应为/dev/asm-data-1却显示/dev/sdb1),说明udev未应用
  • 立即运行:/u01/app/19.0.0/grid/bin/asmcmd afd_label DATA /dev/sdb1 --init(按实际盘符调整),否则sqlplus / as sysasm中SELECT name FROM v$asm_disk;返回空
  • 切勿依赖oracleasm工具(已废弃),19c RAC必须用AFD(ASM Filter Driver)或UDEV,且AFD需在OS升级前已启用

真正的难点不在命令本身,而在于每个节点的udev规则、AFD状态、OCR磁盘组兼容性这三者必须严格对齐——差一个字符、低一个版本、少一次--init,集群就停在“能ping通但CRS起不来”的灰色地带。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

oracle 操作系统

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
视频服务器配置参数有哪些
视频服务器配置参数有哪些

视频服务器配置参数有处理器、内存、存储、视频编解码器、网络接口、视频输入输出接口、操作系统、安全性、环境适应性和成本。在搭建视频服务器时,需要根据实际需求和预算,合理选择这些参数,以实现高性能、高稳定性和低成本的目标。

2023.10.17

4760

11

linux的操作系统介绍
linux的操作系统介绍

Linux是一个灵活、稳定、安全的操作系统,适用于各种不同的应用场景,从个人电脑到服务器和嵌入式系统。想了解更多Linux的相关内容,可以阅读本专题下面的文章。

2024.03.20

3706

12

Linux操作系统的主要用途
Linux操作系统的主要用途

Linux操作系统用途广泛,包括:服务器运营,软件开发,科学研究和教育,嵌入式系统,以及个人电脑和笔记本电脑。想了解更多Linux的相关内容,可以阅读本专题下面的文章。

2024.03.21

6559

8

linux操作系统的作用
linux操作系统的作用

linux操作系统在以下领域发挥着关键作用:服务器和云计算;嵌入式系统;个人电脑和笔记本电脑;超级计算;其他领域等等。想了解更多linux操作系统的相关内容,可以阅读本专题下面的文章。

2024.04.12

3055

5

有哪些常见的网络操作系统
有哪些常见的网络操作系统

常见的网络操作系统有windows server、linux、unix、macos server、freebsd、cisco ios、juniper junos和hp-ux等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2024.09.12

3604

6

32位操作系统怎么改成62位的
32位操作系统怎么改成62位的

要将 32 位操作系统升级到 64 位,需要遵循以下步骤:1. 检查硬件和软件兼容性;2. 备份数据;3. 获取 64 位操作系统;4. 创建可启动安装媒体;5. 从安装媒体启动计算机;6. 选择“升级”选项;7. 完成安装。

2025.04.02

3543

9

oracle清空表数据
oracle清空表数据

当表中的数据不需要时,则应该删除该数据并释放所占用的空间。本专题为大家提供oracle清空表数据的相关文章,帮助大家解决该问题。

2023.08.16

1021

5

Oracle中declare的使用
Oracle中declare的使用

Oracle DECLARE语句是PL/SQL编程语言中用于声明变量、常量、游标或异常的关键字。它的主要作用是在程序中定义这些对象,以便在后续的代码中使用。DECLARE语句的语法简单明了,可以根据需要声明多个对象。通过使用这些声明的对象,可以进行各种操作,如计算、查询数据库、处理异常等 。

2023.09.15

2973

5

oracle怎么分页
oracle怎么分页

实现分页的步骤:1、使用ROWNUM进行分页查询;2、在执行查询之前进行设置分页参数;3、使用"COUNT(*)"函数来获取总行数,并使用"CEIL"函数来向上取整计算总页数;4、在外部查询中使用"WHERE"子句来筛选出特定的行号范围,以实现分页查询。想了解更多oracle怎么分页的文章,可以来阅读本专题先的文章。

2023.09.18

2990

5

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程