所以我有,我认为是64位ubuntu的oracle instantclient的干净安装。
我安装了4个模块:basic,sqlplus,jdbc和sdk。 我在我的/etc/profile.d/oracle.sh中添加了一个tnsnames.ora和以下项目
export DYLD_LIBRARY_PATH=/opt/oracle/instantclient_11_2
export TNS_ADMIN=/opt/oracle/instantclient_11_2
export ORACLE_HOME=/opt/oracle/instantclient_11_2
export ORACLE_ENV=/opt/oracle/instantclient_11_2
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/oracle/instantclient_11_2
export LD_LIBRARY_PATH
PATH=$PATH:/opt/oracle/instantclient_11_2
export PATH
当我尝试使用sqlplus时,我可以毫无问题地获得连接。
我已经下载了DBD :: Oracle 1.74,当我尝试sudo -E perl Makefile.PL时,我遇到了最令人困惑的错误。
Using Oracle in /opt/oracle/instantclient_11_2
sqlplus: error while loading shared libraries: libsqlplus.so: cannot open shared object file: No such file or directory
它显然有我的即时客户端和libsqlplus.so所在的目录,但它找不到该文件。
连连呢?
我应该补充一点,即使
,sudo -E sqlplus也会发出命令not found errorsudo -E echo $ PATH在PATH语句末尾显示:/ opt / oracle / instantclient_11_2。 我只能以普通用户身份运行sqlplus。
答案 0 :(得分:0)
确保您已下载包含sqlplus库的正确软件包
来自Oracle即时客户端网站: “SQL * Plus:使用Instant Client运行SQL * Plus的附加库和可执行文件”
答案 1 :(得分:0)
我不知道这个问题描述对于其他人是多么可重用,但简短的回答是:使用sudo安装DBD :: Oracle,无论你是使用sudo -i还是sudo -E都很受欢迎除非你完全控制sudoers配置,否则会有问题。
我的目的是运行cpan并以root身份安装。