合 Oracle 11.2.0.4单机和rac集群打最新的PSU补丁
最新的PSU补丁如下:
注意:GI PSU补丁包里已经包含了PSU,即31718723的补丁包里已经包含了31537677,所以,下载只需要下载31718723即可。
1 2 | ./obsutil cp -r obs://oracle/11.2.0.4/p31718723_112040_Linux-x86-64.zip /soft/ ./obsutil cp -r obs://oracle/11.2.0.4/p6880880_112000_Linux-x86-64.zip /soft/ |
最新的OPATCH工具下载地址:https://updates.oracle.com/download/6880880.html ,需要注意大版本的匹配。
单机DB环境
单机的DB环境直接打31537677的PSU即可。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | su - oracle $ORACLE_HOME/OPatch/opatch version unzip /soft/p6880880_112000_Linux-x86-64.zip -d $ORACLE_HOME unzip /soft/p31718723_112040_Linux-x86-64.zip -d /soft/ cd /soft/31718723/31537677 $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -ph ./ shutdown immediate $ORACLE_HOME/OPatch/opatch apply $ORACLE_HOME/OPatch/opatch lspatches chown oracle.oinstall /u01/app/oracle/product/11.2.0.4/dbhome_1/bin/extjobO @?/rdbms/admin/catbundle.sql psu apply @?/rdbms/admin/utlrp.sql select * from DBA_REGISTRY_HISTORY d; |
rac环境
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | -- 以下命令在每个节点都需要执行: su - grid unzip /soft/p6880880_112000_Linux-x86-64.zip -d $ORACLE_HOME su - oracle unzip /soft/p6880880_112000_Linux-x86-64.zip -d $ORACLE_HOME su - grid $ORACLE_HOME/OPatch/opatch lsinventory -detail -oh $ORACLE_HOME su - grid unzip /soft/p31718723_112040_Linux-x86-64.zip -d /soft/ su - root /u01/app/11.2.0.4/grid/OPatch/opatch auto /soft/31718723 ##### 上述补丁打完之后再执行如下的db操作 -- 查询 su - grid $ORACLE_HOME/OPatch/opatch lspatches su - oracle $ORACLE_HOME/OPatch/opatch lspatches -- DB @?/rdbms/admin/catbundle.sql psu apply @?/rdbms/admin/utlrp.sql select * from DBA_REGISTRY_HISTORY d; |
从日志可以看出,rac自动打补丁的大致过程为:
1、在节点1手动执行“/u01/app/11.2.0/grid/OPatch/opatch auto /soft/31718723”
2、自动关闭节点1的db实例,并打补丁
3、自动关闭节点1的crs,并打补丁
4、自动启动节点1的crs
5、自动启动节点1的db实例
6、在节点2手动执行“/u01/app/11.2.0/grid/OPatch/opatch auto /soft/31718723”,
7、自动关闭节点2的db实例,并打补丁
8、自动关闭节点2的crs,并打补丁