zl程序教程

您现在的位置是:首页 >  数据库

当前栏目

Oracle 19c RAC 自动应用RU补丁简明版

2023-02-18 16:40:58 时间

环境:Oracle RAC(GI 19.3 + DB 19.3) 本文应用补丁信息, 19.16 RU:

  • p34130714_190000_Linux-x86-64.zip

本文主要演示使用opatch auto自动应用补丁的过程。

1.更新OPatch版本

在所有节点的GI HOME和DB HOME下,都更新为符合应用补丁需求的OPatch版本。 将之前OPatch备份,解压新版本的OPatch到$ORACLE_HOME目录下,最后检查OPatch版本。

--更新OPatch版本 @all nodes including GI HOME and DB HOME
mv OPatch OPatch_bak
unzip p6880880_190000_Linux-x86-64.zip -d $ORACLE_HOME
$ORACLE_HOME/OPatch/opatch version

OPatch Version: 12.2.0.1.35

2.使用opatch auto应用补丁

使用opatch auto应用补丁,具体需要参照补丁包中附带的readme来操作。 根据readme中描述,对于GI HOME和DB HOME都不共享的情况下,使用root用户在每个节点执行opatch auto的具体命令即可实现自动应用补丁。

先确认补丁包的解压目录(各节点保持一致,方便操作):

$ cd /u01/media/ru
$ unzip /u01/media/p34130714_190000_Linux-x86-64.zip

然后使用opatch auto应用补丁,

--opatch auto @all nodes
# $ORACLE_HOME/OPatch/opatchauto /u01/media/ru/34130714
...

这个opatch auto的过程会自动关闭数据库和集群,打完补丁之后自动启动集群和数据库。 同样,第一个节点成功后,在第二个节点应用补丁,输出基本一样,不再演示。

此外,特别值得一提的是,19c还有个便捷操作,如果安装时已经准备好RU补丁,可以在安装软件时直接指定同时applyRU。 比如,在安装DB软件时同时指定RU:

[oracle@bogon db_1]$ ./runInstaller -applyRU /u01/media/ru/34130714/
Applying the patch /u01/media/ru/34130714/...
Successfully applied the patch.
The log can be found at: /tmp/InstallActions2022-12-23_02-59-12PM/installerPatchActions_2022-12-23_02-59-12PM.log
Launching Oracle Database Setup Wizard...

The response file for this session can be found at:
 /u01/app/oracle/product/19.3.0/db_1/install/response/db_2022-12-23_02-59-12PM.rsp

You can find the log of this install session at:
 /tmp/InstallActions2022-12-23_02-59-12PM/installActions2022-12-23_02-59-12PM.log
Moved the install session logs to:
 /u01/app/oraInventory/logs/InstallActions2022-12-23_02-59-12PM
[oracle@bogon db_1]$ 
[oracle@bogon db_1]$ 
[oracle@bogon db_1]$ 
[oracle@bogon db_1]$ sqlplus -v

SQL*Plus: Release 19.0.0.0.0 - Production
Version 19.16.0.0.0

[oracle@bogon db_1]$ 

需要注意,OPatch版本同样需要安装前更新好,否则会报错。

3.应用补丁后操作

最后就是根据readme具体说明,在数据库执行:

cd $ORACLE_HOME/rdbms/admin
sqlplus /nolog
SQL> CONNECT / AS SYSDBA
SQL> startup
SQL> alter pluggable database all open;
SQL> quit

% cd $ORACLE_HOME/OPatch
% ./datapatch -verbose

cd $ORACLE_HOME/rdbms/admin
sqlplus /nolog
SQL> CONNECT / AS SYSDBA
SQL> @utlrp.sql

Check the following log files in $ORACLE_BASE/cfgtoollogs/sqlpatch/34133642/<unique patch ID> for errors.

总的来说,这个opatchauto不出问题的情况下,操作上要比手工打补丁简单的多。