Oracle服务安装后sqlplus命令提示错误

问题现象:

安装Oracle服务端后,sqlplus命令以下错误。

oracle@linux:~/opt/oracle/product/11gR2/db/bin> sqlplus / as sysdba
sqlplus: error while loading shared libraries: libsqlplus.so: cannot open shared object file: No such file or directory

1. 检查LD_LIBRARY_PATH这个环境变量,还是不行。

oracle@linux:echo $LD_LIBRARY_PATH
/lib:/usr/lib
修改为实际的:/opt/oracle/product/11gR2/db/lib:/lib:/usr/lib:/opt/oracle/product/11gR2/db/rdbms/lib

2. 检查用户的组也没问题。

oracle@linux:~> id
uid=1048(oracle) gid=120(oinstall) groups=120(oinstall),121(dba)

进入到sqlplus脚本路径下直接执行

oracle@linux:/opt/oracle/product/11gR2/db/bin> ./sqlplus
./sqlplus: error while loading shared libraries: libsqlplus.so: cannot open shared object file: No such file or directory

3.排查依赖的库是否有问题

oracle@linux:/opt/oracle/product/11gR2/db/bin> ldd /opt/oracle/product/11gR2/db/bin/sqlplus
        linux-gate.so.1 =>  (0xffffe000)
        libsqlplus.so => not found
        libclntsh.so.11.1 => not found
        libnnz11.so => not found
        libdl.so.2 => /lib/libdl.so.2 (0x555a8000)
        libm.so.6 => /lib/libm.so.6 (0x555ae000)
        libpthread.so.0 => /lib/libpthread.so.0 (0x555d6000)
        libnsl.so.1 => /lib/libnsl.so.1 (0x555f1000)
        libc.so.6 => /lib/libc.so.6 (0x5560a000)
        /lib/ld-linux.so.2 (0x55555000)

可以看到libsqlplus.so => not found

解决方案:依赖的动态库不存在,重新relink。

oracle@linux:/opt/oracle/product/11gR2/db/bin> relink all
writing relink log to: /opt/oracle/product/11gR2/db/install/relink.log


oracle@linux:/opt/oracle/product/11gR2/db/bin> sqlplus

SQL*Plus: Release 11.2.0.3.0 Production on Tue Apr 15 04:57:09 2014

Copyright (c) 1982, 2011, Oracle.  All rights reserved.

Enter user-name: ^C

oracle@linux:/opt/oracle/product/11gR2/db/bin> ldd /opt/oracle/product/11gR2/db/bin/sqlplus
        linux-gate.so.1 =>  (0xffffe000)
        libsqlplus.so => /opt/oracle/product/11gR2/db/lib/libsqlplus.so (0x55577000)
        libclntsh.so.11.1 => /opt/oracle/product/11gR2/db/lib/libclntsh.so.11.1 (0x55627000)
        libnnz11.so => /opt/oracle/product/11gR2/db/lib/libnnz11.so (0x57648000)
        libdl.so.2 => /lib/libdl.so.2 (0x578cc000)
        libm.so.6 => /lib/libm.so.6 (0x578d2000)
        libpthread.so.0 => /lib/libpthread.so.0 (0x578fa000)
        libnsl.so.1 => /lib/libnsl.so.1 (0x57915000)
        libc.so.6 => /lib/libc.so.6 (0x5792e000)
        libaio.so.1 => /lib/libaio.so.1 (0x57a8f000)
        /lib/ld-linux.so.2 (0x55555000)

sqlplus 依赖的库文件恢复正常,sqlplus可以使用。

相关推荐