Syl*_*oux 13

sqlplus从shell 正常运行的最低配置是设置ORACLE_HOMELD_LIBRARY_PATH.为了便于使用,您可能也需要相应地设置PATH.

假设您已解压缩所需的存档/opt/oracle/instantclient_11_1:

$ export ORACLE_HOME=/opt/oracle/instantclient_11_1
$ export LD_LIBRARY_PATH="$ORACLE_HOME"
$ export PATH="$ORACLE_HOME:$PATH"

$ sqlplus

SQL*Plus: Release 11.1.0.7.0 - Production on Wed Dec 31 14:06:06 2014
...
Run Code Online (Sandbox Code Playgroud)

  • 是的,但是仅当可执行文件和库都在$ ORACLE_HOME /中时,而在将它们安装在自己的目录中(如$ ORACLE_HOME / bin /和$ ORACLE_HOME / lib /)时,则不是 (2认同)

for*_*een 9

您应该已经在/etc/profile.d/oracle.sh. 确保你的来源:

$ source /etc/profile.d/oracle.sh

该文件的内容如下所示:

ORACLE_HOME=/usr/lib/oracle/11.2/client64
PATH=$ORACLE_HOME/bin:$PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib
export ORACLE_HOME
export LD_LIBRARY_PATH
export PATH
Run Code Online (Sandbox Code Playgroud)

如果您没有它,请创建它并获取它。


Leo*_*Rom 6

我确实通过设置来解决此错误

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib:$ORACLE_HOME
Run Code Online (Sandbox Code Playgroud)

是的,不仅$ ORACLE_HOME / lib而且$ ORACLE_HOME也是如此。


Too*_*kit 6

sudo sh -c "echo /usr/lib/oracle/12.2/client64/lib > /etc/ld.so.conf.d/oracle-instantclient.conf";sudo ldconfig
Run Code Online (Sandbox Code Playgroud)

来自https://help.ubuntu.com/community/Oracle%20Instant%20Client

  • 版本18.3是当前版本,这小段脚本也将绕过奇怪的限制性sudo权限:`echo /usr/lib/oracle/18.3/client64/lib> /tmp/oracle-instantclient.conf; 须藤cp /tmp/oracle-instantclient.conf /etc/ld.so.conf.d; 须藤ldconfig` (2认同)
  • 对于 19c,安装 RPM 时会自动运行“ldconfig”命令。 (2认同)

小智 0

这意味着您没有设置 ORACLE_HOME 和 ORACLE_SID 变量。请设置正确的工作 $ORACLE_HOME 和 $ORACLE_SID,然后执行 sqlplus /nolog 命令。它将发挥作用。