oracle19c rac补丁升级及回退(19.3->19.22)

一、准备工作及打补丁

1.备份当前集群的所有文件(两个节点都要做)

cd /u01/app/19.3.0/grid/bin/
crsctl stop crs
tar -zcvf /u01/app.tar.gz /u01/app
/u01/app/19.0.0/grid/bin/
crsctl start crs

2.解压压缩包并替换opatch(两节点都要做)

# 替换GI的OPatch
su - grid
cd /u01/app/19.3.0/grid
mv OPatch OPatch.bak20
su - root
cd /soft
chown -R grid:oinstall /soft
unzip p6880880_190000_Linux-x86-64.zip

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"
cp -r OPatch /u01/app/19.3.0/grid/
chown grid:oinstall -R /u01/app/19.3.0/grid/OPatch
# 替换DB的OPatch
cd $ORACLE_HOME
mv OPatch/ OPatch_bak20
su root
chown -R oracle:oinstall /soft
cp -r /soft/OPatch /u01/app/oracle/product/19.3.0/db
chown -R oracle:oinstall /u01/app/oracle/product/19.3.0/db
su - oracle
cd $ORACLE_HOME/OPatch
./opatch version 

3.验证ORACLE清单信息(两节点)

su - root
chown grid:oinstall -R /soft
su - grid
$ORACLE_HOME/OPatch/opatch lsinventory > /soft/grid_patch.txt
$ORACLE_HOME/OPatch/opatch lsinv -detail -oh $ORACLE_HOME >> /soft/grid_patch.txt
$ORACLE_HOME/OPatch/opatch lspatches >> /soft/grid_patch.txt

su - root
chown oracle:oinstall -R /soft
su - oracle
$ORACLE_HOME/OPatch/opatch lsinventory > /soft/oracle_patch.txt
$ORACLE_HOME/OPatch/opatch lsinv -detail -oh $ORACLE_HOME >> /soft/oracle_patch.txt
$ORACLE_HOME/OPatch/opatch lspatches >> /soft/oracle_patch.txt

4.冲突检测(两节点)

# grid用户下
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用户下
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

5.空间检测

su - root
chown grid:oinstall -R /soft
#grid用户下
vim /soft/patch_list_gihome.txt

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

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


su - root
chown oracle:oinstall -R /soft
#  oracle用户下
vim /soft/patch_list_dbhome.txt

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

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

6.应用修补程序补丁(两节点)

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

7.打补丁(双节点)

su - root
# 如果节点2没有这个文件可以从节点1拷过去
scp -r /u01/app/oraInventory/ContentsXML/oui-patch.xml root@p19c02:/u01/app/oraInventory/ContentsXML
chmod 777 /u01/app/oraInventory/ContentsXML/oui-patch.xml
cd /soft/35940989/35967489/files/bin/
chmod 777 *
# 执行以下命令应用补丁(采用的是 grid和db一起打的方式)
/u01/app/19.3.0/grid/OPatch/opatchauto apply /soft/35940989


# 另外一个节点选择分开打
/u01/app/19.3.0/grid/OPatch/opatchauto apply /soft/35940989 -oh /u01/app/19.3.0/grid
/u01/app/oracle/product/19.3.0/db/OPatch/opatchauto apply /soft/35940989 -oh /u01/app/oracle/product/19.3.0/db

8.将修改的sql文件应用到库中

# 一个节点执行就行
cd $ORACLE_HOME/OPatch
./datapatch -sanity_checks
./datapatch -verbose

二、回退补丁

su - root
cd /
/u01/app/19.3.0/grid/OPatch/opatchauto rollback /soft/35940989

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值