天天看點

oracle 11g libclntsh.so.10.1,cx_Oracle找不到libclntsh.so.10.1錯誤

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

再調用就好了