oracle 19c RAC p33509923补丁升级19.14

集群环境为oracle19c RAC,共享存储采用openfiler配置asm磁盘,打p33509923补丁是因为手上只有这个补丁包,本篇文档详细记录下19c RAC 测试环境下补丁应用过程及问题记录。以下为p33509923补丁操作部分说明截图

补丁准备

两个节点准备补丁包

mkdir /soft

chmod +x -R /soft/

环境检查

su - oracle

sqlplus / as sysdba

col product for A30
col version for A15
col version_full for A20
col status for A15
select * from product_component_version;

opatch版本检查

在node1/node2两个节点上分别进入oracle/grid用户进行版本查询

su - oracle

opatch version

su - grid

opatch version

opatch 备份

root:

mv /u01/app/19.3.0/grid/OPatch /u01/app/19.3.0/grid/OPatch_bak

mv /u01/app/oracle/product/19.3.0/dbhome_1/OPatch /u01/app/oracle/product/19.3.0/dbhome_1/OPatch_bak

更新opatch

oracle opatch

root

unzip /soft/p6880880_190000_Linux-x86-64.zip -d /u01/app/oracle/product/19.3.0/dbhome_1/
chown -R oracle:oinstall /u01/app/oracle/product/19.3.0/dbhome_1/OPatch

grid opatch

root

unzip /soft/p6880880_190000_Linux-x86-64.zip -d /u01/app/19.3.0/grid/
chown -R grid:oinstall /u01/app/19.3.0/grid/OPatch

opatch版本检查

在oracle和grid下验证opatch版本和有效性

#opatch版本

$ORACLE_HOME/OPatch/opatch version

#opatch 有效性

$ORACLE_HOME/OPatch/opatch lsinventory -detail -oh $ORACLE_HOME

补丁解压

#root

unzip p33509923_190000_Linux-x86-64.zip

chown -R grid:oinstall /soft/35940989/

补丁冲突检查

grid和oracle用户下分别执行检查

su - grid
 

$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /soft/33509923/33239955
$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /soft/33509923/33515361
$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /soft/33509923/33529556
$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /soft/33509923/33534448
$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /soft/33509923/33575402


su - oracle

$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /soft/33509923/33239955
$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /soft/33509923/33515361
$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /soft/33509923/33529556
$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /soft/33509923/33534448
$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /soft/33509923/33575402

补丁空间检查

su - grid

vi /tmp/patch_list_gihome.txt
/soft/33509923/33239955
/soft/33509923/33515361
/soft/33509923/33529556
/soft/33509923/33534448
/soft/33509923/33575402

两个节点 grid用户 oracle用户分别执行
$ORACLE_HOME/OPatch/opatch prereq CheckSystemSpace -phBaseFile /tmp/patch_list_gihome.txt

补丁分析检查

两个节点使用root执行

su - root
cd /

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

我这里执行时ll两个节点出现报错,根据报错提示缺失命令fuser,fuser是一个在 Linux 系统中用于识别和显示正在使用某个文件、目录或套接字的进程的命令。它可以帮助系统管理员监控和管理文件的使用情况,以及处理被占用的资源;现在对两个节点执安装这个组件

su - root

[root@node1 ~]#yum search fuser

[root@node1 ~]#yum install -y psmisc

[root@node1 ~]# which fuser
/usr/sbin/fuser

修复完成后重新执行分析检查,正常。

node1:
su - root
chmod 777 /u01/app/oraInventory/ContentsXML/oui-patch.xml

scp -r /u01/app/oraInventory/ContentsXML/oui-patch.xml root@node2:/u01/app/oraInventory/ContentsXML

node2:
chown grid:oinstall oui-patch.xml
chmod 777 /u01/app/oraInventory/ContentsXML/oui-patch.xml

补丁应用

先停库打节点1,起库完成后再打节点2

node1:
su - grid
 

#停集群

srvctl stop database -d node
crsctl status res -t

#1节点应用补丁
su - root

cd /soft/33509923

chmod 777 *

/u01/app/19.3.0/grid/OPatch/opatchauto apply /soft/33509923 -oh /u01/app/19.3.0/grid

/u01/app/oracle/product/19.3.0/dbhome_1/OPatch/opatchauto apply /soft/33509923 -oh /u01/app/oracle/product/19.3.0/dbhome_1


su - grid
lsnrctl start
srvctl start instance -d node -i node1

grid补丁应用--耗时13分钟

oracle补丁应用--耗时7分钟

出现这个waring警告,提示sql不能应用,等2节点打完后统一刷新数据字典,更新应用SQL

1节点打完后对1节点起库

srvctl start instance -d node -i node1

crsctl status res -t

一节点打完对一节点起库后,开始对二节点进行补丁应用

node2:


su - root
cd /soft/33509923
chmod 777 *

/u01/app/19.3.0/grid/OPatch/opatchauto apply /soft/33509923 -oh /u01/app/19.3.0/grid

/u01/app/oracle/product/19.3.0/dbhome_1/OPatch/opatchauto apply /soft/33509923 -oh /u01/app/oracle/product/19.3.0/dbhome_1


su - grid
lsnrctl start
srvctl start instance -d node -i node2

grid补丁应用--耗时15分钟

oracle补丁应用--耗时7分钟

2节点打完后对2节点起库

srvctl start instance -d node -i node1

crsctl status res -t

根据补丁文档说明对补丁应用后的数据库执行数据字典更新

#cdb模式下打开所有pdb

sqlplus / as sysdba

show pdbs;
alter pluggable database all open;

刷新数据字典 --耗时36分钟

su - oracle

cd $ORACLE_HOME/OPatch
./datapatch -verbose

刷新无效对象

cd $ORACLE_HOME/rdbms/admin
sqlplus / as sysdba
@utlrp.sql

验证补丁集

$ORACLE_HOME/OPatch/opatch lspatches

版本验证

column product format A30
column version format A15
column version_full format A20
column status format A15
select * from product_component_version;

补丁应用成功 数据库成功从19.3升级到19.14

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值