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版本

相关推荐
超级小忍1 小时前
如何配置 MySQL 允许远程连接
数据库·mysql·adb
吹牛不交税1 小时前
sqlsugar WhereIF条件的大于等于和等于查出来的坑
数据库·mysql
小袁搬码1 小时前
PL/SQLDeveloper中数值类型字段查询后显示为科学计数法的处理方式
oracle·oracle数据库·pl.sqldeveloper
hshpy2 小时前
setting up Activiti BPMN Workflow Engine with Spring Boot
数据库·spring boot·后端
文牧之3 小时前
Oracle 审计参数:AUDIT_TRAIL 和 AUDIT_SYS_OPERATIONS
运维·数据库·oracle
篱笆院的狗3 小时前
如何使用 Redis 快速实现布隆过滤器?
数据库·redis·缓存
洛神灬殇4 小时前
【LLM大模型技术专题】「入门到精通系列教程」基于ai-openai-spring-boot-starter集成开发实战指南
网络·数据库·微服务·云原生·架构
小鸡脚来咯4 小时前
redis分片集群架构
数据库·redis·架构
christine-rr4 小时前
征文投稿:如何写一份实用的技术文档?——以软件配置为例
运维·前端·网络·数据库·软件构建
海尔辛5 小时前
SQL 基础入门
数据库·sql