sqlplus:加载共享库时出错:libsqlplus.so:无法打开共享对象文件:没有这样的文件或目录

use*_*631 15 environment-variables oracle software-installation

  • echo $PATH 给我以下结果:

/home/mayank/bin:/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games :/usr/lib/jvm/java-7-oracle/bin:/usr/lib/jvm/java-7-oracle/db/bin:/usr/lib/jvm/java-7-oracle/jre/bin: /usr/lib/oracle/12.1/client/bin

  • echo $ORACLE_HOME 获取:

/usr/lib/oracle/12.1/client

  • echo LD_LIBRARY_PATH给出(之前设置过/etc/bash.bashrc,但现在显示如下

LD_LIBRARY_PATH

vim.bash_profile下面的事情集显示:

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" #
Load RVM into a shell session *as a function*

LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
    export LD_LIBRARY_PATH

PATH=$PATH:/usr/local/bin
    export PATH
Run Code Online (Sandbox Code Playgroud)

尽管ld_library_path在上面的文件中设置了我仍然没有得到正确的路径,env尽管运行sudo ldconfig然后重新启动了我的机器!!

我正在寻找什么帮助:

  • 正确设置环境变量

  • 运行 sqlplus

同样的问题存在superuser,但那里没有给出解决方案。

Wol*_*ang 17

正如评论中所见,您的库位于 /usr/lib/oracle/12.1/client/lib/,但您的路径仅包含 /usr/lib/oracle/12.1/client/bin ......你明白为什么它可以'没找到图书馆?

您可以使用 /usr/lib/oracle/12.1/client/lib/ 目录(在您的 .profile 或 .environment 或 .bash_profile 或(如果您希望所有用户都使用)中的 /etc/bash.bashrc 扩展您的 LD_LIBRARY_PATH文件) - 我不知道 sqlplus 是否会处理 LD_LIBRARY_PATH - 试试看。

要查看 LD_LIBRARY_PATH 的设置,您必须键入:

echo $LD_LIBRARY_PATH
Run Code Online (Sandbox Code Playgroud)

(如果您想读取值,请注意 $!)

希望这可以帮助!