最近接觸了下監控平台Zenoss,其中涉及到Oracle的外掛程式ZenPacks.community.OracleMon,使用該外掛程式必須要安裝Python的cx_Oracle。接下來說說如何安裝它。
一、涉及軟體包
1、cx_Oracle
:http://sourceforge.net/projects/cx-oracle/files/?source=navbar
我下載的是最新版的cx_Oracle-5.1.2.tar.gz
2、Oracle_client
使用cx_Oracle必須要安裝Oracle_client端,或者你已經安裝了Oracle資料庫。
:http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html
以串連Oracle11為例需要下載以下rpm包:
oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm
oracle-instantclient11.2-jdbc-11.2.0.4.0-1.x86_64.rpm
oracle-instantclient11.2-sqlplus-11.2.0.4.0-1.x86_64.rpm
oracle-instantclient11.2-devel-11.2.0.4.0-1.x86_64.rpm
oracle-instantclient11.2-odbc-11.2.0.4.0-1.x86_64.rpm
oracle-instantclient11.2-tools-11.2.0.4.0-1.x86_64.rpm
軟體包都下載完後,我們開始來安裝。
二、源碼安裝
1、Oracle_client端安裝:
# rpm -ivh oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm oracle-instantclient11.2-jdbc-11.2.0.4.0-1.x86_64.rpm oracle-instantclient11.2-sqlplus-11.2.0.4.0-1.x86_64.rpm oracle-instantclient11.2-devel-11.2.0.4.0-1.x86_64.rpm oracle-instantclient11.2-odbc-11.2.0.4.0-1.x86_64.rpm oracle-instantclient11.2-tools-11.2.0.4.0-1.x86_64.rpm
# echo /usr/lib/oracle/11.2/client64/lib/ >> /etc/ld.so.conf
# ldconfig
如果不進行ldconfig配置,在運行cx_Oracle時會報以下錯誤:
libclntsh.so.11.1: cannot open shared object file: No such file or directory
2、設定相應使用者的環境變數:
在這裡需要說明下,你使用哪個帳戶裝cx_Oracle就需要配置哪個帳戶的環境變數,以下已root帳戶為例;
如果不配置環境變數、或環境變數配置不正確,在安裝cx_Oracle時,會報各種錯誤,比如說:
oci.h: No such file or directory
#vi ~/.bashrc
export TNS_ADMIN="/usr/lib/oracle"
export ORACLE_HOME="/usr/lib/oracle/11.2/client64"
export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:${ORACLE_HOME}/lib"
export PATH="${PATH}:${ORACLE_HOME}"
#source ~/.bashrc
3、源碼安裝
#tar -zxvf cx_Oracle-5.1.2.tar.gz
#cd cx_Oracle-5.1.2
#python setup.py install
4、安裝成功後相應檢查
#python
Python 2.7.2 (default, Aug 21 2013, 12:12:55)
[GCC 4.4.4 20100726 (Red Hat 4.4.4-13)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>import cx_Oracle
>>>
CentOS install Python 2.6.5 & cx_Oracle
Python中cx_Oracle模組安裝遇到的問題與解決方案
Python+cx_Oracle安裝及一個簡單樣本(歸檔下熱備資料檔案)
《Python開發技術詳解》.( 周偉,宗傑).[高清PDF掃描版+隨書視頻+代碼]
Python指令碼擷取Linux系統資訊
Python 的詳細介紹:請點這裡
Python 的:請點這裡