<b>ORACLE RAC</b><b>--</b><b>libpthread.so.0: cannot open shared object file</b><b>解決方法</b>
安裝配置完RAC後,使用ORACLE使用者執行如下指令:
[oracle@rac1 ~]$ srvctl
/u01/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
解決方法:
這個錯誤一般是在linux 5上裝10G RAC時會碰到的,當安裝界面提示你用root腳本執行相應腳本時碰到,如:
Oracle CRS stack installed and running under init(1M)
Running vipca(silent) for configuring nodeapps
/u01/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
其實這是無法完成vipca工作導緻的,可以通過以下方法解決:
方法1.不去理會,選擇繼續,然後安裝10.2.0.4及以上版本的patchsets,然後在來手工執行vipca完成vip配置工作,因為這個錯誤在10.2.0.4版本中已經得到修複
方法2.手工配置
[root@rac1 ~]# # ./oifcfg setif -global eth0/172.21.1.0:public
[root@rac1 ~]# # ./oifcfg setif -global eth1/10.10.10.0:cluster_interconnect
[root@rac1 ~]# # ./oifcfg getif
eth0 172.21.1.0 global public
eth1 10.10.10.0 global cluster_interconnect
[root@rac1 ~]# # ./oifcfg iflist
eth0 172.21.1.0
eth1 10.10.10.0
然後修改vipca和srvctl ,搜尋LD_ASSUME_KERNEL
在下方添加如下
unset LD_ASSUME_KERNEL
再執行./vipca
然後選擇圖形界面裡的重新驗證,這樣就可以通過了
注意事項:
配置使用者環境變量時,需要把CRS的環境變量寫在ORACLE_HOME前面,否則,不會生效,配置如下:
[oracle@rac1 ~]$ cat .bash_profile
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
alias sqlplus='/usr/local/rlwrap/bin/rlwrap sqlplus'
alias rman='/usr/local/rlwrap/bin/rlwrap rman'
unset USERNAME
export ORACLE_BASE=/u01/oracle
export ORACLE_TERM=xterm
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
export CRS_HOME=$ORACLE_BASE/product/crs
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export ORACLE_ADMIN=$ORACLE_HOME/network/admin
export ORA_NL$33=$ORACLE_HOME/ocommon/nls/admin/data
export PATH=/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin:$PATH
export ORACLE_SID=RAC1
export PATH=$CRS_HOME/bin:$ORACLE_HOME/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin:$PATH
export LANG=en_US
export NLS_DATE_FORMAT='YYYY-MM-DD HH24:MI:SS'
[oracle@rac1 ~]$ source .bash_profile
Usage: srvctl <command> <object> [<options>]
command: enable|disable|start|stop|relocate|status|add|remove|modify|getenv|setenv|unsetenv|config
objects: database|instance|service|nodeapps|asm|listener
For detailed help on each command and object and its options use:
srvctl <command> <object> -h
此時,srvctl可以正常使用了。
本文轉自vcdog 51CTO部落格,原文連結:http://blog.51cto.com/255361/837513,如需轉載請自行聯系原作者