在RAC 中解决 vipca 和 srvctl 无法执行的错误

/home/oracle/crs/oracle/product/10/crs/jdk/jre//bin/java: error while loading shared libraries: libpthread.so.0: cannot open shared object file解决方法:
这个错误一般是在linux 5上装10G RAC时会碰到的,当安装界面提示你用root脚本执行相应脚本时碰到,如:
Oracle CRS stack installed and running under init(1M)
Running vipca(silent) for configuring nodeapps
/home/oracle/crs/oracle/product/10/crs/jdk/jre//bin/java: error while loading
shared libraries: libpthread.so.0: cannot open shared object file:
No such file or directory
其实这是无法完成vipca工作导致的,你可以用以下方法解决:
方法1.不去理会,选择继续,然后安装10.2.0.4及以上版本的patchsets,然后在来手工执行vipca完成vip配置工作,因为这个错误在10.2.0.4版本中已经得到修复
方法2.手工配置
/bin # ./oifcfg setif -global eth0/192.168.1.0:public
/bin # ./oifcfg setif -global eth1/10.10.10.0:cluster_interconnect
/bin # ./oifcfg getif
 eth0 192.168.1.0 global public
 eth1 10.10.10.0 global cluster_interconnect

/bin # ./oifcfg iflist
eth0 192.168.1.0
eth1 10.10.10.0

./vipca
然后选择图形界面里的重新验证,这样就可以通过了

george.ma blog:http://blog.chinaunix.net/u/12521/

参选metalink文档 ID: 414163.1
问题二:srvctl 执行报错
[oracle@rac3 ~]$ srvctl status nodeapps -n rac1
/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
oracle@orarac1 ~]$ srvctl status database -d orcl
/ora/app/oracle/product/10.2/db_1/jdk/jre/bin/java: error while loading shared libraries: libpthread.so.0: cannot open shared object file: No such file or directory
[oracle@orarac1 ~]$
看到这个错误,想起当初 安装完10.2.0.1的 rac时也发生过此错误。就是一时想不起当时怎么处理的。现在是升级到0.3的rac系统。
找出升级前的 备份资料,用备份资料中的srvctl脚本执行
/bak/oracle/app/crs/bin/srvctl status database -d orcl
呵呵,没有报错。检查了了n久的脚本,才找出不同来(呵呵,不够细心)
#Remove this workaround when the bug 3937317 is fixed
LD_ASSUME_KERNEL=2.4.19
export LD_ASSUME_KERNEL

只要注释掉这两行就ok了

另外在安装rac时vipca脚本也是类似错误
/app/oracle/product/10.2.0/crs/bin/crsctl.bin: error while loading shared libraries: libpthread.so.0: cannot open shared object file: No such file or directory
这个问题是新版的glibc和 10g java有不兼容的地方。按照官方文档要在运行root.sh之前修改vipca脚本。这样就可以安装了。即将该脚本中arch=‘’uname -m‘以下4行注释掉
arch=`uname -m`
#if [ "$arch" = "i686" -o "$arch" = "ia64" -o "$arch" = "x86_64" ]
#then
# LD_ASSUME_KERNEL=2.4.19
# export LD_ASSUME_KERNEL
#fi
#End workaround
这样就不会出现错误了。
 
我安装上面的提示注释掉了,或使用unset LD_ASSUME_KERNEL还是报错
[oracle@rac3 ~]$ srvctl status database -d orcl
/u01/app/oracle/product/10.2.0/db_1/jdk/jre/bin/java: error while loading shared libraries: libpthread.so.0: cannot open shared object file: No such file or directory,
仔细看一下原来时调用db_1中Java类库,重新设置一下path 变量的顺序就ok了

[oracle@rac3 ~]$ srvctl status nodeapps -n rac1
VIP is running on node: rac1
GSD is running on node: rac1
Listener is running on node: rac1
ONS daemon is running on node: rac1
export PATH= $ORA_CRS_HOME/bin:$ORACLE_HOME/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin 注意前面两个的顺序,Oracle的bug还真是一堆一堆的!

猜你喜欢

转载自blog.csdn.net/gg__dba_blog/article/details/52958328
今日推荐