CentOS6.3上搭建Python3.3訪問Oracle 11gR2的環境
CentOS6.3上搭建Python3.3訪問Oracle 11gR2的環境
查看CentOS內建的python路徑和版本
[root@oracle11g ~]# which python
/usr/bin/python
[root@oracle11g ~]# python -V
Python 2.6.6
下載python3.3的源碼包(http://www.python.org/ftp/python/3.3.2/Python-3.3.2.tar.bz2)進行安裝
tar -xvjf Python-3.3.2.tar.bz2
cd Python-3.3.2
./configure --prefix='/usr/local'
make && make install
設定python3的路徑
ln -s /usr/local/bin/python3.3 /usr/bin/python3
這裡不替換原2.6版本的python,因為yum依賴2.6版本的python。如果要替換,需要更改yum檔案。為了穩妥起見,用python3表示python3.3的程式。
python訪問Oracle一般使用一個叫cx_Oracle的python擴充模組(http://cx-oracle.sourceforge.net/)。cx_Oracle再通過OCI來訪問Oracle。這裡的系統內容中,Oracle使用者下已經安裝好了Oracle用戶端,且環境變數已經配置好。
選擇下載最新版的源碼包進行安裝
tar -zxvf cx_Oracle-5.1.2.tar.gz
cd cx_Oracle-5.1.2
python3 setup.py build
python3 setup.py install
使用Oracle使用者進行測試cx_Oracle模組
[root@oracle11g ~]# su - oracle
[oracle@oracle11g ~]$ python3
Python 3.3.2 (default, Sep 24 2013, 21:31:35)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-3)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import cx_Oracle
>>> print(cx_Oracle.version)
5.1.2
>>> quit();
說明cx_Oracle已經安裝成功。
再使用Oracle使用者測試連接資料庫進行查詢
[oracle@oracle11g ~]$ cat testpy.py
#! /usr/bin/env python3
import cx_Oracle
# connect via SQL*Net string or by each segment in a separate argument
#connection = cx_Oracle.connect("user/password@TNS")
connection = cx_Oracle.connect("scott", "tiger", "V_ORCLDB")
cursor = connection.cursor()
cursor.execute("""
select sysdate col_test
from dual""")
for col_test in cursor:
print ("Sysdate:", col_test)
[oracle@oracle11g ~]$ python3 testpy.py
Sysdate: (datetime.datetime(2013, 9, 24, 23, 1, 20),)
[oracle@oracle11g ~]$
測試成功。
下面關於Python的文章您也可能喜歡,不妨看看:
Linux下Python的安裝以及注意事項
Ubuntu 14.04 下安裝使用Python rq模組
無需作業系統直接運行 Python 代碼
CentOS上源碼安裝Python3.4
《Python核心編程 第二版》.(Wesley J. Chun ).[高清PDF中文版]
《Python開發技術詳解》.( 周偉,宗傑).[高清PDF掃描版+隨書視頻+代碼]
Python指令碼擷取Linux系統資訊
在Ubuntu下用Python搭建案頭演算法交易研究環境
Python 語言的發展簡史
Python 的詳細介紹:請點這裡
Python 的:請點這裡