前提检查
df -h 磁盘空间要充足
crsctl stat res 集群状态要正常,最好重启主机再检查一遍(时钟不同步可能起不来,权限、密码可能导致不正常)
select name,database_role,open_mode from gv$database; 数据库角色是primary,open_mode=read write
上传介质到 /ora_soft
RU 19.13 介质 :p33248471_190000_Linux-x86-64-ojvm-gi-19.13.0.0.211019.zip
OPATCH 补丁工具:p6880880_190000_Linux-x86-64-OPatch 12.2.0.1.27 for DB 19.0.0.0.0.zip
用root更新grid的opatch
export GRID_HOME=/oracle/app/19.0.0/grid
mv $GRID_HOME/OPatch $GRID_HOME/OPatch_bak
unzip -q p688*.zip -d $GRID_HOME
chown -R grid:oinstall $GRID_HOME/OPatch
su - grid -c "opatch version"
应该是12.2.0.1.27
用oracle更新db的opatch
mv $ORACLE_HOME/OPatch $ORACLE_HOME/OPatch_bak
unzip -q p688*.zip -d $ORACLE_HOME
opatch version
两个节点都更新opatch后
用root打补丁
unzip -q p33248471*.zip
chown -R grid:oinstall /ora_soft
$GRID_HOME/OPatch/opatchauto apply /ora_soft/33248471/33182768
两个节点都打完后,确认一下
su - grid -c "opatch lspatches"
su - oracle -c "opatch lspatches"
在实例1上执行sql
alter system set cluster_database=false scope=spfile;
$ORACLE_HOME/bin/srvctl stop database -d <dbname>
sqlplus / AS SYSDBA
STARTUP UPGRADE
cd $ORACLE_HOME/OPatch
./datapatch -verbose
alter system set cluster_database=true scope=spfile;
SHUTDOWN immediate
$ORACLE_HOME/bin/srvctl start database -d <dbname>
用oracle安装ojvm补丁
cd /ora_soft/33248471/33192694
opatch apply -silent
两个节点都打完后
执行sql (参考上面的)