即使设置了LD_LIBRARY_PATH,SQLPlus客户端也无法运行

时间:2017-06-20 18:39:28

标签: ubuntu terminal sqlplus

我试图从终端执行sqlplus。我已经在下面定义了添加LD_LIBRARY_PATH行的bash_profile:

[[ -s "$HOME/.profile" ]] && source "$HOME/.profile" # Load the default .profile

LD_LIBRARY_PATH=/usr/local/instantclient_12_2:${LD_LIBRARY_PATH}
export LD_LIBRARY_PATH

调用sqlplus我收到此错误:

sqlplus: error while loading shared libraries: libsqlplus.so: cannot open shared object file: No such file or directory

仅当我在终端上明确导出路径时才解决这个问题:

导出LD_LIBRARY_PATH=/usr/local/instantclient_12_2:${LD_LIBRARY_PATH}

如果我已经在bash_profile上定义了,为什么错误仍然存​​在?

P.S:更改后我退出重启我的机器刷新环境。但没有成功。

1 个答案:

答案 0 :(得分:0)

我建议您在.bashrc中设置变量$ ORACLE_HOME。 .bashrc(提到bashrc之前的点)应该放在你的主目录中。使用命令cd到达那里(没有参数)。

export $ORACLE_HOME=/usr/local/instantclient_12_2

然后在你的.bashrc中使用它,如下所示:

export PATH=$ORACLE_HOME:$ORACLE_HOME/bim:$PATH

应解决您的问题。

如果没有,请考虑使用LD_LIBRARY_PATH变量并将其指向所需的.so库。

E.g。

export LD_LIBRARY_PATH=$ORACLE_HOME:$LD_LIBRARY_PATH