服務器環境
系統:Red Hat Enterprise Linux Server release 6.7 (Santiago)(64位)
數據庫:Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
Python:Python 2.6.6
Oracle Instant Client安裝
下載地址:
http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html
選擇合適的版本下載 我選擇的是Instant Client for Linux x86-64 下的 oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64.rpm
注意:此處只需要下載basic版本就可以了,也可以下載zip文件自行安裝。下載的時候需要oracle的賬戶,沒有的話可以注冊一個
文件遷移:因為我下載到了本地,所以需要通過sshclient將文件傳輸到服務器。在服務器上可以使用wget 命令下載,參見 《Python + Redis 模塊配置》
安裝:找到服務器中文件的位置,執行sudo rpm -ivh oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64.rpm
我的安裝路徑為 /usr/lib/oracle/12.1/client64/
提示:安裝路徑查詢方法rpm -ql 包名注意這里的是不包括.rpm后綴的軟件包的名稱
環境變量: 通過vi /etc/profile 指令編輯 系統文件,添加環境變量
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib:/usr/local/lib;
export LD_LIBRARY_PATH
注意:當切換為不同用戶使用系統是,可能需要為不同用戶配置環境變量,最好直接配置root的環境變量
Python cx_Oracle 模塊安裝
下載地址:https://pypi.python.org/pypi根據自己的操作系統,數據庫以及python版本,我選擇的是
文件遷移:同上
安裝: 將壓縮包解壓到相應的文件夾,tar -xvfz cx_Oracle-5.2.tar.gz
提示:tar -cvfz archive.tar.gz dir1 ####創建一個gzip格式的壓縮包#### tar -xvfz archive.tar.gz ####解壓一個gzip格式的壓縮包####
配置Python:安裝完成后,進入文件夾cd cx_Oracle-5.2,執行python setup.py build install進行模塊安裝
注意:如果出現gcc的編譯錯誤是因為系統沒有安裝gcc,執行yum install gcc 就能自動安裝。
測試
進入Python環境,執行import cx_Oracle,沒有報錯則配置成功
如果出現:No such file or directory 錯誤
小結
我的碰到的問題是 No such file or directory 錯誤 ,出現原因是因為環境變量沒有配置