已索引

环境:GI home and the database homes that are not shared and Oracle ACFS file system is not configured.

以 p31718723_112040_Linux-x86-64.zip (11.2.0.4.201020,OCT2020,11g最后一个能公开下载的PSU) 为例。

下面是给 GI 与 DB 软件一键打 PSU 补丁的方法,根据补丁的不同,安装方法可能有所差异,请参考 README 文件。

1.更新 opatch 工具(所有节点,所有用户)

将 opatch 压缩包下载到一个临时目录,以被更新目录属主身份执行如下命令更新:

$ unzip <OPATCH-ZIP> -d $ORACLE_HOME
$ $ORACLE_HOME/OPatch/opatch version

所有节点的 GRID_HOME 目录和 ORACLE_HOME 目录下的 OPatch 目录都需要被更新。

2.检查产品清单文件一致性(所有节点,所有用户)

在所有节点上分别以 oracle 和 grid 用户执行如下命令:

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

3.停止 EM Agent

As the Oracle RAC database home owner execute:

$ $ORACLE_HOME/bin/emctl stop dbconsole

4.停止 TFA

补丁 README 上没有这一步,但实际打补丁的时候因为 TFA 失败过,关闭就好了。

# $GRID_HOME/bin/tfactl stop

5.One-off Patch 冲突检测与处理

如果之前打过单补丁的话,做冲突检测与处理,如果之前没有单独打过某个补丁,一直都是打的PSU,则跳过。

6.使用 opatch auto 打补丁(所有节点)

准备一个共享空目录,该目录被称为 <UNZIPPED_PATCH_LOCATION>,属主建议设置为 grid.oinstall。将补丁包放到里面。

以grid用户身份解压:

$ cd <UNZIPPED_PATCH_LOCATION>
$ unzip p31718723_112040_Linux-x86-64.zip
$ chmod -R 755 31718723/

以 root 身份打补丁:

As root user, execute the following command on each node of the cluster:
/data/app/11.2.0/grid/OPatch/opatch auto <UNZIPPED_PATCH_LOCATION>/31718723

完成后,在第二个节点上执行opatch命令。

7.Loading Modified SQL Files into the Database

只需要在其中一个节点上执行:

$ cd /data/app/oracle/product/11.2.0/db_1/rdbms/admin/
$ sqlplus / as sysdba;
SQL> @catbundle.sql psu apply
-- By 许望(RHCA、OCM、VCP)
最后修改:2024 年 08 月 06 日 04 : 05 PM
如果觉得我的文章对你有用,请随意赞赏