一直都是在RHEL4上装RAC的,最多的用的就是4.7这个版本,这几天看到几个客户用的CentOS5的版本。
所以也试试搞个CentOS5的版本来玩玩。在centos网站上下的CentOS5.4 64位的版本。
Centos是Linux As的克隆版,所以以前搞RHEL AS4的时候,也玩过CentOS4.7, 不过RHEL4还一直没有搞过5的版本,所以这个CentOS 64位是第一次尝试叻。
本以为安装没有什么特别的地方的,不过还是遇到一些问题,特记录一下
运行clusterware/cluvfy/runcluvfy.sh stage -pre crsinst -n inthrac01,inthrac02
除了vip不通过,其他都pass
但是运行runInstaller还没有出画面就出错了。
Preparing to launch Oracle Universal Installer from
/tmp/OraInstall2010-02-06_15-23-11PM. Please wait ...[oracle@web9p
database]$ Oracle Universal Installer, Version 10.2.0.1.0 Production
Copyright (C) 1999, 2005, Oracle. All rights reserved.
Exception java.lang.UnsatisfiedLinkError:
/tmp/raInstall2010-02-06_15-23-11PM/jre/1.4.2/lib/i386/libawt.so:
libXp.so.6: cannot open shared object file: No such file or directory
occurred..
java.lang.UnsatisfiedLinkError:
/tmp/raInstall2010-02-06_15-23-11PM/jre/1.4.2/lib/i386/libawt.so:
libXp.so.6: cannot open shared object file: No such file or directory
这个错误很好解释,java调用GUI出安装画面的时候缺少libXp.so.6这个库。
好办呀,CentOS集成yum,比RHEL方便的多,
马上yum search libXp
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* addons: mirrors.163.com
* base: mirrors.163.com
* extras: mirrors.163.com
* updates: mirrors.163.com
=============================== Matched: libXp ================================
libXp.i386 : X.Org X11 libXp runtime library
libXp.x86_64 : X.Org X11 libXp runtime library
马上yum install libXp.x86_64
安装libXp
可是问题依旧。
这下才引起我的注意,马上仔细看了看错误的地方
jre/1.4.2/lib/i386/libawt.so: libXp.so.6:
莫非这个libXp还没有这个libXp.so.6
马上查了一下
[root@inthrac02 ~]# yum provides libXp.so.6
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* addons: mirrors.163.com
* base: mirrors.163.com
* extras: mirrors.163.com
* updates: mirrors.163.com
libXp-1.0.0-8.1.el5.i386 : X.Org X11 libXp runtime library
Repo : base
Matched from:
Other : libXp.so.6
libXp-1.0.0-8.1.el5.i386 : X.Org X11 libXp runtime library
Repo : installed
Matched from:
Other : Provides-match: libXp.so.6
还确实没有,应该是用这个包
libXp-1.0.0-8.1.el5.i386
运行安装其
yum install libXp-1.0.0-8.1.el5.i386
然后runInstaller,画面可以出来叻。OK
一波才平,一波又起
安装结束以后,分别在两个节点执行root.sh时,后面一个节点执行到最后报错
Oracle CRS stack installed and running under init(1M)
Running vipca(silent) for configuring nodeapps
/u01/app/oracle/product/10.2.0/crs_1/jdk/jre//bin/java: error while
loading shared libraries: libpthread.so.0: cannot open shared object
file: No such file or directory
这里vipca是不能成功,但是以前不会有这个错,
find / libpthread.so.0 | grep libpthread.so.0
发现这个lib已经存在了,怎么还是有错了。
用刚才的方法就解决不了了,在网上找了找。
有一个解决的办法,就是修改vipca文件
在vipca的最后的加上
unset LD_ASSUME_KERNEL
如下
esac
unset LD_ASSUME_KERNEL
ARGUMENTS=""
NUMBER_OF_ARGUMENTS=$#
if [ $NUMBER_OF_ARGUMENTS -gt 0 ]; then
ARGUMENTS=$*
fi
# Run Vipca
exec $JRE $JRE_OPTIONS $SRVM_PROPERTY_DEFS -classpath $CLASSPATH oracle.ops.vipca.VipCA -orahome $ORACLE_HOME $ARGUMENTS
在两个节点上都修改好了以后,然后再vipca,还是不行
这回提示
[java.lang.UnsatisfiedLinkError:
/u01/app/oracle/product/10.2.0/crs_1/lib32/libsrvmhas10.so: libclntsh.so.10.1: wrong
ELF class: ELFCLASS64]]]
PRKH-1010 : No se ha podido comunicar con los servicios de CRS.
[PRKH-1000 : No se ha podido cargar la biblioteca compartida de SRVM HAS
[PRKN-1008 : No se ha podido cargar la biblioteca compartida "srvmhas10"
唉,比我想象中问题多出好多,查询安装的目录,这个libclntsh.so.10.1确实已经存在了呀。还是一筹莫展呀。
进行过程遇到障碍。在网上搜索了一下,确实发现有类似的问题,但是都是悬而未决的。
在otn也有这样的问题,但是都没有最后的答案。 不过还是找到不少的线索。这里是由于这里的jdk是32位的,所以这个库是64位的,从而导致了wrong ELF class: ELFCLASS64的错。
根据官方网的手册,把所有的依赖包,只有要32位的都安装了一次,然后执行vipca还是有错。
折腾到晚上,有朋友约着吃饭,喝了喝酒,也就睡了。第二天起来,忽然想起,既然是机器的64bit和32bit的冲突,那么也就是说又可能,我安
装的过程中由于一些32bit的包找不到,而导致这些包只有在64位上编译,从而出现这个问题。如果是这样,我在安装好了以后再来运行vipca已经是生
米煮成熟饭叻,要想解决应该是卸载重新来过才行吧。
为了证明我这个推断,其实也就是没有办法的办法。我卸载掉crs,然后重新装过。
终于又来到vipca叻。第一个错误还在,没事加上unset unset LD_ASSUME_KERNEL
然后再vipca,然后屏气等着期望的画面,哇,真的还出画面了呀。
step by step,一切顺利VIPca结束。 看来Oracle在安装程序的时候,真有这样的动作呀。你也应该出个提示和警告呀。
至此CRS已经成功的安装到了CENTOS5.4 64bit的平台上了。
后来在一个网站上看到同样的处理方法
http://dba.5341.com/msg/74891.html