Oracle 10g R2 RAC手动打补丁PSU(10.2.0.5.19)

Oracle 10g R2 RAC手动打补丁PSU(10.2.0.5.19)

一、准备工作

1,数据库环境

操作系统版本  : RedHat 5.8 x64  
数据库版本    : Oracle 10.2.0.5 x64 RAC    
Cluterware    : 10.2.0.5    
Oracle database: 10.2.0.5.0    
PSU补丁        : 10.2.0.5.19 (2015年下半年)

2,准备内容

OPatch : p6880880_102000_Linux-x86-64.zip  
DB PSU : p20299014_10205_Linux-x86-64.zip

说明:p20299014补丁包无CRS的补丁修复,所以直接打数据库PSU即可。

二、更新OPatch版本,必须要更新

说明:分别在两个节点更新OPatch版本。

1. 更新OPatch版本,需要从10.2.0.4.9更新到10.2.0.5.1,OPatch直接压缩替换就可以了。

(1) 上传p6880880_112000_Linux-x86-64.zip,p20299014_10205_Linux-x86-64.zip到/u01/app目录下。  
(2) root用户下将原OPatch目录改名。

mv /u01/app/oracle/product/10.2.0/db_1/OPatch /u01/app/oracle/product/10.2.0/db_1/OPatchBK

2. oracle目录OPatch替换

(1) root用户  
cd /u01/app/    
chown oracle:oinstall p6880880_102000_Linux-x86-64.zip    
chown oracle:oinstall p20299014_10205_Linux-x86-64.zip

(2) oracle用户

su - oracle  
cd /u01/app/    
unzip p6880880_112000_Linux-x86-64.zip    
unzip p20299014_10205_Linux-x86-64.zip

(3) root用户

cd /u01/app/  
mv OPatch /u01/app/oracle/product/10.2.0/db_1/

(4) oracle用户测试

su - oracle

/u01/app/oracle/product/10.2.0/db_1/OPatch/opatch version

Invoking OPatch 10.2.0.5.1  
OPatch Version: 10.2.0.5.1

3. 测试兼容性

su - oracle

$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /u01/app/20299014 -oh $ORACLE_HOME

Invoking OPatch 10.2.0.5.1  
Oracle Interim Patch Installer version 10.2.0.5.1    
Copyright (c) 2010, Oracle Corporation.  All rights reserved.    
PREREQ session    
Oracle Home      : /u01/app/oracle/product/10.2.0/db_1    
Central Inventory : /u01/app/oracle/oraInventory    
  from          : /etc/oraInst.loc    
OPatch version    : 10.2.0.5.1    
OUI version      : 10.2.0.5.0    
OUI location      : /u01/app/oracle/product/10.2.0/db_1/oui    
Log file location : /u01/app/oracle/product/10.2.0/db_1/cfgtoollogs/opatch/opatch2016-03-29_10-38-44AM.log    
Patch history file: /u01/app/oracle/product/10.2.0/db_1/cfgtoollogs/opatch/opatch_history.txt    
Invoking prereq "checkconflictagainstohwithdetail"    
Prereq "checkConflictAgainstOHWithDetail" passed.    
OPatch succeeded.

4. 查看该补丁能否采用rolling方式升级

采用这种方法对应用系统没有影响的,升级一个节点的同时,其他节点不需要停机.  
$ /u01/app/oracle/product/10.2.0/db_1/OPatch/opatch query -all /u01/app/20299014/ |grep rolling                         
Patch is a rolling patch: true

三、打database PSU补丁

升级看各自的环境,可以有用滚动升级的方式,也可以采用全关闭了再升级。

1. 先升级节点1,关闭节点1

[oracle@node1 ~]$ srvctl stop instance -d orcl -i orcl1  
[oracle@node1 ~]$ srvctl stop listener -n node1    
[oracle@node1 ~]$ srvctl stop asm -n node1

2. 执行升级

本地升级方式:  
cd /u01/app/    
/u01/app/oracle/product/10.2.0/db_1/OPatch/opatch napply -local -oh /u01/app/oracle/product/10.2.0/db_1 -id 20299014

例:如果不采用滚动升级的话,本地与远程一起打的方式:  
cd /u01/app/20299014    
/u01/app/oracle/product/10.2.0/db_1/OPatch/opatch apply

先打本地节点,启动节点1数据库,再关闭节点2,再打节点2补丁,最后启动节点2。

3. 节点1启动。

[oracle@node1 ~]$ srvctl start asm -n node1  
[oracle@node1 ~]$ srvctl start instance -d orcl -i orcl1    
[oracle@node1 ~]$ srvctl start listener -n node1

4. 关闭节点2

[oracle@node2 ~]$ srvctl stop instance -d orcl -i orcl2  
[oracle@node2 ~]$ srvctl stop listener -n node2    
[oracle@node2 ~]$ srvctl stop asm -n node2

继续打节点2补丁,完毕后,再启动节点2.

[oracle@node2 ~]$ srvctl start asm -n node2  
[oracle@node2 ~]$ srvctl start instance -d orcl -i orcl2    
[oracle@node2 ~]$ srvctl start listener -n node2

5. 节点1,节点2检查升级情况

$ /u01/app/oracle/product/10.2.0/db_1/OPatch/opatch lsinv   
                                                   
Invoking OPatch 10.2.0.5.1    
Oracle Interim Patch Installer version 10.2.0.5.1    
Copyright (c) 2010, Oracle Corporation.  All rights reserved.

Oracle Home      : /u01/app/oracle/product/10.2.0/db_1  
Central Inventory : /u01/app/oracle/oraInventory    
  from          : /etc/oraInst.loc    
OPatch version    : 10.2.0.5.1    
OUI version      : 10.2.0.5.0    
OUI location      : /u01/app/oracle/product/10.2.0/db_1/oui    
Log file location : /u01/app/oracle/product/10.2.0/db_1/cfgtoollogs/opatch/opatch2016-03-29_16-10-36PM.log

Patch history file: /u01/app/oracle/product/10.2.0/db_1/cfgtoollogs/opatch/opatch_history.txt

Lsinventory Output file location : /u01/app/oracle/product/10.2.0/db_1/cfgtoollogs/opatch/lsinv/lsinventory2016-03-29_16-10-36PM.txt

--------------------------------------------------------------------------------  
Installed Top-level Products (2):

Oracle Database 10g                                                  10.2.0.1.0  
Oracle Database 10g Release 2 Patch Set 4                            10.2.0.5.0    
There are 2 products installed in this Oracle Home.

Interim patches (1) :

Patch  20299014    : applied on Tue Mar 29 16:03:40 CST 2016  
Unique Patch ID:  19074368    
  Created on 24 Jun 2015, 02:35:37 hrs PST8PDT    
  Bugs fixed:    
    20074391, 13596521, 17088068, 8865718, 17201047, 13489660, 9020537    
    8664189, 10091698, 14275629, 19909862, 17832122, 17832123, 17832124    
    17832125, 16619894, 8822531, 10139235, 20299014, 8350262, 7119382    
    19274521, 13632738, 11724962, 20331945, 19274523, 9320130, 16961614    
    16961615, 13775862, 16961616, 16961617, 19006757, 16961618, 16961619    
    18221699, 9399589, 14841459, 9672816, 9499302, 20299021, 9659614, 13632743    
    9949948, 14220725, 8882576, 7612454, 7111619, 9711859, 9714832, 12780098    
    13561951, 14665116, 11066597, 16703112, 19231857, 17721717, 9713537    
    14459552, 19458377, 13737773, 13737775, 16212405, 18096714, 16338983    
    14390396, 10249537, 19006849, 7115910, 8354642, 7602341, 14076510    
    12565867, 15987029, 16462834, 18641419, 11693109, 14023636, 9024850    
    8394351, 8224558, 17082365, 14149782, 9109487, 14841558, 9171933    
    10173237, 16817117, 10068982, 10306945, 8666117, 11725006, 10214450    
    14205448, 17082371, 9767674, 16306019, 9323583, 9726739, 16279211    
    8412426, 10326338, 10165083, 6651220, 9145204, 13554409, 11076894    
    19854436, 11893577, 17865671, 16746190, 14492313, 14492314, 11814891    
    14492315, 14492316, 16742123, 21048089, 16864562, 14546638, 12419258    
    16056270, 10010310, 18139709, 9689310, 9390484, 21048090, 21048091    
    9963497, 12551700, 16362358, 12551701, 17465584, 12551702, 12551703    
    12551704, 10076669, 12551705, 16270946, 12551706, 12551707, 6076890    
    9308296, 12551708, 14258925, 12880299, 17381900, 18641451, 17381901    
    17381902, 11790175, 12796518, 9772888, 8650138, 17056813, 14469008    
    12551710, 10092858, 7519406, 9821321, 8771916, 13349665, 7509714    
    10159846, 13257247, 18031728, 18641461, 16372203, 11792865, 19007266    
    19309466, 16309604, 16309605, 16309606, 18522511, 8966823, 11674645    
    17551414, 15877957, 15877958, 7026523, 15877959, 17716305, 13503598    
    18767250, 9150282, 9448311, 10327179, 14774730, 19153980, 9735237    
    9952230, 15877960, 15877961, 15877962, 15877963, 8660422, 18221700    
    18221701, 16279401, 14546673, 14105702, 14105703, 14105704, 13483152    
    14269955, 17285560, 12925532, 12748240, 9694101, 12862186, 12862187    
    14727319, 8211733, 9586877, 9548269, 6694396, 7710224, 9337325, 11856395    
    10157402, 15950541, 19699191, 6402302, 10327190, 10269717, 13015379    
    10017048, 8546356, 13561750, 8821114, 9770451, 9360157, 8488233, 10132870    
    4180770, 9532911, 7361418, 6157713, 9184754, 8544696, 17850678, 8277300    
    13343467, 16382448, 13791364, 12419392, 10208905, 20236416, 20236417    
    20236418, 20236419, 7450366, 8970313, 6690853, 6011045, 10162036, 10248542    
    9469117, 13359623, 9952270, 13343471, 9842573, 17381899, 12710774    
    20558005, 10324526, 9322219, 8636407, 12828105, 19289642, 13736501    
    9824435, 13736502, 18681879, 13736503, 13736504, 13736505, 13736506    
    9032322, 13736507, 14035825, 19769505, 11858315, 14040433, 13916709    
    12827745, 14038805, 19567242, 16721594, 13923855, 19567243, 8528171    
    9072105, 19567244, 11737047

Rac system comprising of multiple nodes  
  Local node = node1    
  Remote node = node2    
--------------------------------------------------------------------------------    
OPatch succeeded.

四、升级数据库数据字典

1,数据库启动,数据库已经启动的情况下,不需要再启动数据库,直接执行脚本即可。

$ sqlplus / as sysdba  
 
cd $ORACLE_HOME/rdbms/admin    
sqlplus /nolog    
SQL> CONNECT / AS SYSDBA    
SQL> STARTUP    
SQL> @catbundle.sql psu apply    
SQL> @utlrp.sql    
SQL>

2. 执行完后我们可以查到PSU更新信息:

set line 150  
col ACTION_TIME for a30    
col ACTION for a10    
col NAMESPACE for a8    
col VERSION for a18    
col BUNDLE_SERIES for a5    
col COMMENTS for a20    
select * from dba_registry_history;    
 

ACTION_TIME                    ACTION    NAMESPAC VERSION                    ID BUNDL COMMENTS  
------------------------------ ---------- -------- ------------------ ---------- ----- --------------------    
29-MAR-16 04.15.04.729398 PM  jvmpsu.sql SERVER  10.2.0.5.2OJVMBP            0      RAN jvmpsu.sql    
29-MAR-16 04.15.52.723026 PM  jvmpsu.sql SERVER  10.2.0.5.2OJVMBP            0      RAN jvmpsu.sql    
29-MAR-16 04.24.14.043257 PM  APPLY      SERVER  10.2.0.5                  19 PSU  PSU 10.2.0.5.19

3 rows selected.  
SQL>

相关推荐