1. 准备工作(两节点均执行)
(1) upgrade grid's opatch version
root执行:
mv $GRID_HOME/OPatch $GRID_HOME/OPatch112034
cd $GRID_HOME
unzip /soft/orasoft/p6880880_112000_Linux-x86-64.zip .
chown -R grid:oinstall OPatch
(2) upgrade oracle's opatch version
root执行:
mv $ORACLE_HOME/OPatch $ORACLE_HOME/OPatch112034
cd $ORACLE_HOME
unzip /soft/orasoft/p6880880_112000_Linux-x86-64.zip .
chown -R oracle:oinstall OPatch
(3) unzip the PSU as grid user
su - grid
cd /tmp
unzip /soft/orasoft/p28813878_112040_Linux-x86-64.zip
(4) Prepare the ocm.rsp file as grid user for patch apply
$GRID_HOME/OPatch/ocm/bin/emocmrsp -no_banner -output /tmp/ocm.rsp
(5) precheck the conflicts
su - grid
$GRID_HOME/OPatch/opatch lsinventory
su - oracle
$ORACLE_HOME/OPatch/opatch lsinventory
(6) check on which node the instance is running
su - oracle
srvctl status database -d cc
2. 用opatch auto同时给grid和oracle打补丁
(1) Apply PSU on the free node which has no instance running and check the results
su - root
$GRID_HOME/OPatch/opatch auto /tmp/28813878 -ocmrf /tmp/ocm.rsp
su - grid
$GRID_HOME/OPatch/opatch lsinventory
su - oracle
$ORACLE_HOME/OPatch/opatch lsinventory
(2) Relocate the instance to the patched node
su - oracle
srvctl relocate database -d cc -n node1
(3) Apply the PSU on the other node and check
su - root
$GRID_HOME/OPatch/opatch auto /tmp/28813878 -ocmrf /tmp/ocm.rsp
su - grid
$GRID_HOME/OPatch/opatch lsinventory
su - oracle
$ORACLE_HOME/OPatch/opatch lsinventory
(4)Apply sql patch into the existing instance
11g:
su - oracle
cd $ORACLE_HOME/rdbms/admin
exort ORACLE_SID=cc_1
$sqlplus ‘/as sysdba’
SQL> @catbundle.sql psu apply
SQL> @utlrp.sql
SQL>exit
12c:
su - oracle
$ORACLE_HOME/OPatch/datapatch -verbose
(5) Check if the sql patch is applied successfully
select * from dba_registry_history;