Oracle 19cRAC集群补丁升级

Oracle 19cRAC集群补丁升级

Oracle 19cRAC集群安装教程参考:https://blog.csdn.net/yushaoyyds/article/details/135791234?spm=1001.2014.3001.5502

文章目录

一、补丁包获取

链接:https://pan.baidu.com/s/1khH1gbq9hAXJ_ek6cLS8rg

提取码:w2dv

下载后将文件上传到虚拟机的/soft目录下

p6880880_190000_Linux-x86-64.zip (更新opatch)

p35940989_190000_Linux-x86-64.zip(GI包,grid软件升级包)

p35943157_190000_Linux-x86-64.zip(DB包,数据库升级包)

查看两个节点之前的版本

powershell 复制代码
column product format A30
column version format A15
column version_full format A20
column status format A15
select * from product_component_version;

二、检查Opatch并更新

(两个节点都要执行)

Grid用户更新OPatch

查看一下OPatch的版本信息

powershell 复制代码
opatch version

将6880880补丁下载,并解压 $ unzip -o "6880880.zip"

再解压所有的补丁包

powershell 复制代码
#注意以下所有操作都是root用户执行的,但是进行查询版本的时候需要进入配置过环境变量的用户
su - root
cd /soft

chown -R grid:oinstall /soft
su - grid -c "unzip -q -o /soft/p6880880_190000_Linux-x86-64.zip -d /u01/app/19.3.0/grid"
su - grid -c "unzip -q /soft/p35940989_190000_Linux-x86-64.zip -d /soft"
chown -R oracle:oinstall /soft
su - oracle -c "unzip -q -o /soft/p35943157_190000_Linux-x86-64.zip -d /u01/app/oracle/product/19.3.0/db"

再次查看opatch版本可以看到已经更新为19.2.0.1.41

powershell 复制代码
su - grid
opatch version

Oracle用户更新OPatch

查看一下OPatch的版本信息

powershell 复制代码
opatch version

powershell 复制代码
su - oracle -c "unzip -q -o /soft/p6880880_190000_Linux-x86-64.zip -d /u01/app/oracle/product/19.3.0/db"
su - oracle
opatch version


三、验证Oracle Inventory的有效性

(两个节点都要操作)

GI HOME 和DB HOME 都需要验证,分别使用grid和oracle用户执行如下命令,确保返回SUCCESS。

oracle用户:

powershell 复制代码
$ORACLE_HOME/OPatch/opatch lsinventory -detail -oh $ORACLE_HOME 

grid用户:

powershell 复制代码
$ORACLE_HOME/OPatch/opatch lsinventory -detail -oh $ORACLE_HOME 


四、运行 OPatch 冲突检查

(两个节点都要操作,这里以节点一为例)

进行补丁验证(grid用户下)

powershell 复制代码
cd /u01/app/19.3.0/grid/OPatch/ 

$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /soft/35940989/33575402

$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /soft/35940989/35943157

$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /soft/35940989/35956421

$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /soft/35940989/35967489

$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /soft/35940989/36115038


进行补丁验证(Oracle用户下)

powershell 复制代码
su - oracle
cd /u01/app/19.3.0/grid/OPatch

$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /soft/35940989/35943157

$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /soft/35940989/35967489

五、运行opatch命令检查GI HOME下是否有足够的空间

(两个节点都要操作)

grid用户:

powershell 复制代码
vim /soft/patch_list_gihome.txt

/soft/35940989/35943157
/soft/35940989/35967489
/soft/35940989/35956421
/soft/35940989/36115038
/soft/35940989/33575402

oracle用户:

powershell 复制代码
vim /soft/patch_list_dbhome.txt

/soft/35940989/35943157
/soft/35940989/35967489

$ORACLE_HOME/OPatch/opatch prereq CheckSystemSpace -phBaseFile /soft/patch_list_dbhome.txt


六、补丁冲突检测与解决(修补程序)

(两个节点都要操作,注意:一定要在两个节点执行完后之前的操作后再进行此操作,否则会报错)

应用修补程序补丁:

powershell 复制代码
su - root
cd /
/u01/app/19.3.0/grid/OPatch/opatchauto apply /soft/35940989 -analyze 

补充:回滚修补程序(此操作不需要执行)

powershell 复制代码
rollback /soft/35940989 -analyze  ```

七、应用补丁

(节点1打完,再打节点2)

powershell 复制代码
su - root
chmod 777 /u01/app/oraInventory/ContentsXML/oui-patch.xml
cd /soft/35940989/35967489/files/bin/
chmod 777 *

节点二没有/u01/app/oraInventory/ContentsXML/oui-patch.xml文件,可以从节点一copy过去

powershell 复制代码
scp -r /u01/app/oraInventory/ContentsXML/oui-patch.xml root@p19c02:/u01/app/oraInventory/ContentsXML


关闭节点1的监听,数据库

powershell 复制代码
su - grid
lsnrctl stop
srvctl stop instance -d p19c0 -i p19c01

给节点1打补丁

powershell 复制代码
cd /soft/35940989/35967489/files/bin/
chmod 777 *
/u01/app/19.3.0/grid/OPatch/opatchauto apply /soft/35940989 -oh /u01/app/19.3.0/grid

打开节点1的监听、数据库

powershell 复制代码
su - grid
lsnrctl start
srvctl start instance -d p19c0 -i p19c01

给节点二打补丁

#节点2,在打节点2之前,注意先把节点一的服务启动

su - root

cd /

#打补丁

/u01/app/19.3.0/grid/OPatch/opatchauto apply /soft/35940989

#查看版本的命令

opatch lspatches

八、将修改后的SQL文件驾照到数据库中

打开数据库

powershell 复制代码
sqlplus / as sysdba
startup
exit
cd $ORACLE_HOME/OPatch
./datapatch -sanity_checks
./datapatch -verbose

九、回退补丁

powershell 复制代码
su - root
cd /

/u01/app/19.3.0/grid/OPatch/opatchauto rollback /soft/35940989

可以看到已经回退到19.3.0.0版本

相关推荐
SirLancelot116 分钟前
AI大模型-基本介绍(一)RAG、向量、向量数据库
数据库·人工智能·ai·向量·向量数据库·rag
李慕婉学姐22 分钟前
Springboot面向电商的仓库管理系统05uc4267(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
数据库·spring boot·后端
imbackneverdie26 分钟前
AI工具如何重塑综述写作新体验
数据库·人工智能·考研·自然语言处理·aigc·论文·ai写作
Warren981 小时前
datagrip新建oracle连接教程
数据库·windows·云原生·oracle·容器·kubernetes·django
焦糖玛奇朵婷1 小时前
扭蛋机小程序:线上扭蛋机模式发展新形势[特殊字符]
大数据·数据库·程序人生·小程序·软件需求
YMatrix 官方技术社区1 小时前
YMatrix 高可用详解:3 种镜像策略在节点宕机时表现有何不同?
运维·数据库·数据仓库·ai·数据库开发·数据库架构·ymatrix
嘟嘟w1 小时前
SQL注入是什么
数据库·sql·oracle
摇滚侠1 小时前
Redis 零基础到进阶,Redis 主从复制,笔记55-62
数据库·redis·笔记
surtr11 小时前
数据库基础(数据库原理和应用)
数据库·sql·mysql·oracle·database