linux环境下安装oracle,使用python调用,安装cx_Oracle后报错如下:
查阅多方资料后找到原因。
解决方法:
在/etc/profile中添加
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib:/usr/local/lib;
export LD_LIBRARY_PATH
然后用source /etc/profile 生效一下
改后如果也不行,可能没有权限执行libclntsh.so.10.1,请ls -l 看一下执行权限吧(有时root也不能执行它)
在其他地方找的方法,虽然问题依旧,但还是需要注意:
安装完成后在python里输入
>>> import cx_Oracle
Traceback (most recent call last):
File "", line 1, in ?
ImportError: libclntsh.so.10.1: cannot open shared object file: No such file or directory
经过查找发现是oracle的路径没有设置
输入:
locate libclntsh.so.10.1
获取对于路径
/app/oracle/oracle/product/10.2.0/db_1/lib/libclntsh.so.10.1
编辑/etc/ld.so.conf
sudo gedit /etc/ld.so.conf
在最后一行输入获取的路径
/app/oracle/oracle/product/10.2.0/db_1/lib/
保存,关闭gedit
执行
ldconfig
再调用就好了
转载于:https://blog.51cto.com/thgenius/709096