首页 >数据库 >mysql教程 >libpthread.so.0: cannot open shared object file解决方法

libpthread.so.0: cannot open shared object file解决方法

WBOY
WBOY原创
2016-06-07 17:22:572045浏览

在linux 5上装10G RAC时,常常会碰到ldquo;libpthread.so.0: cannot open shared object file这个报错的,这个报错是由于无法使

在linux 5上装10G RAC时,常常会碰到“libpthread.so.0: cannot open shared object file"这个报错的,这个报错是由于无法使用vipca导致的该报错有以下两种解决方案:
方法1
不去理会,选择继续,然后安装10.2.0.4及以上版本的patchsets,然后在来手工执行vipca完成vip配置工作,,因为这个错误在10.2.0.4版本中已经得到修复
方法2

手工配置
确认网络配置
# ./oifcfg getif
eth0 172.21.1.0 global public
eth1 10.10.10.0 global cluster_interconnect
# ./oifcfg iflist
eth0 172.21.1.0
eth1 10.10.10.0
如果不正确可以使用下列命令配置
# ./oifcfg setif -global eth0/172.21.1.0:public
# ./oifcfg setif -global eth1/10.10.10.0:cluster_interconnect
然后修改vipca和srvctl ,搜索LD_ASSUME_KERNEL,注释掉下列几行
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

再执行./vipca即可,二者原理相同
关于这个报错,Oracle有以下文档进行说明
10gR2 RAC Install issues on Oracle EL5 or RHEL5 or SLES10 (VIPCA / SRVCTL / OUI Failures) [ID 414163.1]

 

Modified 04-AUG-2010 Type PROBLEM Status ARCHIVED

 

In this Document



Applies to:

Oracle Server - Enterprise Edition - Version: 10.2.0.1 to 10.2.0.3 - Release: 10.2 to 10.2
Linux x86
Generic Linux
Linux x86-64
***Checked for relevance on 04-Aug-2010***

When installing 10gR2 RAC on Oracle Enterprise Linux 5 or RHEL5 or SLES10 there are three issues that users must be aware of.

Issue#1: To install 10gR2, you must first install the base release, which is 10.2.0.1. As these version of OS are newer, you should use the following command to invoke the installer:

$ runInstaller -ignoreSysPrereqs // This will bypass the OS check //


Issue#2: At end of root.sh on the last node vipca will fail to run with the following error:

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

Also, srvctl will show similar output if workaround below is not implemented.

Issue#3: After working around Issue#2 above, vipca will fail to run with the following error if the VIP IP's are in a non-routable range [10.x.x.x, 172.(16-31).x.x or 192.168.x.x]:

# vipca
Error 0(Native: listNetInterfaces:[3])
[Error 0(Native: listNetInterfaces:[3])]

These releases of the Linux kernel fix an old bug in the Linux threading that Oracle worked around using LD_ASSUME_KERNEL settings in both vipca and srvctl, this workaround is no longer valid on OEL5 or RHEL5 or SLES10 hence the failures.

If you have not yet run root.sh on the last node, implement workaround for issue#2 below and run root.sh (you may skip running the vipca portion at the bottom of this note).
If you have a non-routable IP range for VIPs you will also need workaround for issue# 3 and then run vipca manually.

To workaround Issue#2 above, edit vipca (in the CRS bin directory on all nodes) to undo the setting of LD_ASSUME_KERNEL. After the IF statement around line 120 add an unset command to ensure LD_ASSUME_KERNEL is not set as follows:

if [ "$arch" = "i686" -o "$arch" = "ia64" -o "$arch" = "x86_64" ]
then
LD_ASSUME_KERNEL=2.4.19
export LD_ASSUME_KERNEL
fi

unset LD_ASSUME_KERNEL <<<== Line to be added

 

与 srvctl 类似(在 CRS 以及安装后的所有节点上的 RDBMS 和 ASM bin 目录),通过在该行周围添加一行来取消设置 LD_ASSUME_KERNEL 168 应该是这样的:

LD_ASSUME_KERNEL=2.4.19
导出 LD_ASSUME_KERNEL

取消设置 LD_ASSUME_KERNEL

请记住在所有节点上重新编辑这些文件
/bin/vipca
/bin/srvctl
/bin/srvctl
/bin/srvctl

应用 10.2.0.2 或 10.2.0.3 补丁集后,因为这些补丁集仍将包含 OEL5 或 RHEL5 或 SLES10 不必要的设置
。此问题是在开发过程中提出的,并10.2.0.4 补丁集中修复

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn