前一阵一直在测试ORACLE 10R2的RAC环境在Solaris上的安装。碰到了很多的问题,不过最后总算成功了,这里简单总结一下安装步骤,以及碰到的问题和解决方法。
这一篇主要讨论Oracle RAC环境应用5117016补丁集以及应用这个补丁集后的bug。
操作系统准备工作可以参考:Solaris8上安装RAC10202环境(一):http://yangtingkun.itpub.net/post/468/271797
Oracle的Clusterware安装过程可以参考:Solaris8上安装RAC10202环境(二):http://yangtingkun.itpub.net/post/468/271812
Oracle软件安装和ASM配置可以参考:Solaris8上安装RAC10202环境(三):http://yangtingkun.itpub.net/post/468/272088
RAC数据库的建立可以参考:Solaris8上安装RAC10202环境(四):http://yangtingkun.itpub.net/post/468/272138
ORACLE 10.2.0.2的补丁安装可以参考:Solaris8上安装RAC10202环境(五):http://yangtingkun.itpub.net/post/468/272201
相信用过10.2.0.2的,都知道10.2.0.2有一个很严重的问题:LIBSERVER10.A INCORRECTLY LOCATED IN $ORACLE_HOME/RDBMS/LIB/。
这会导致以后10.2.0.2版本的数据库安装或升级任何的补丁都必须强制打一个补丁5117016。
这里就一起将这个bug也打了patch。
下载p5117016_10202_SOLARIS64.zip将文件拷贝到两个节点上并展开:
$ cd /data/patch/5117016
$ ls
p5117016_10202_SOLARIS64.zip
$ unzip p5117016_10202_SOLARIS64.zip
Archive: p5117016_10202_SOLARIS64.zip
creating: 5117016/
creating: 5117016/files/
creating: 5117016/etc/
creating: 5117016/etc/config/
inflating: 5117016/etc/config/inventory
inflating: 5117016/etc/config/actions
creating: 5117016/etc/xml/
inflating: 5117016/etc/xml/GenericActions.xml
inflating: 5117016/etc/xml/ShiphomeDirectoryStructure.xml
creating: 5117016/custom/
creating: 5117016/custom/scripts/
inflating: 5117016/custom/scripts/pre
inflating: 5117016/README.txt
根据本文前面的给出的停止进程的方法,停掉所有的Oracle进程:
$ srvctl stop db -d testrac
IXDBA.NET技术社区
$ srvctl stop asm -n racnode1
$ srvctl stop asm -n racnode2
$ srvctl stop listener -n racnode1
$ srvctl stop listener -n racnode2
如果agent和Enterprise Manager进程启动着,在两个节点使用emctl stop agent和emctl stop dbconsole命令关闭进程。
然后使用root用户在两个节点上执行:
# /etc/init.d/init.crs stop
Shutting down Oracle Cluster Ready Services (CRS):
Mar 15 17:47:59.301 | INF | daemon shutting down
Stopping resources.
Successfully stopped CRS resources
Stopping CSSD.
Shutting down CSS daemon.
Shutdown request successfully issued.
Shutdown has begun. The daemons should exit soon.
通过ps –ef检查是否所有的Oracle相关进程都已经停止。
下面在两个节点上分别执行下面的操作:
$ cd /data/patch/5117016/5117016
$ $ORACLE_HOME/OPatch/opatch apply -local
Invoking OPatch 10.2.0.2.0
Oracle interim Patch Installer version 10.2.0.2.0
Copyright (c) 2005, Oracle Corporation. All rights reserved..
Oracle Home : /data/oracle/product/10.2/database
Central Inventory : /data/oracle/oraInventory
from : /data/oracle/product/10.2/database/oraInst.loc
OPatch version : 10.2.0.2.0
OUI version : 10.2.0.2.0
OUI location : /data/oracle/product/10.2/database/oui
Log file location : /data/oracle/product/10.2/database/cfgtoollogs/opatch/opatch-2007_Mar_15_18-03-44-CST_Thu.log
ApplySession applying interim patch '5117016' to OH '/data/oracle/product/10.2/database'
You selected -local option, hence OPatch will patch the local system only.