Python 連線 Oracle資料庫

jerrysun發表於2021-09-09


1.環境設定

[root@oracle ~]# cat /etc/redhat-release 

CentOS release 6.9 (Final)

[root@oracle ~]# python -V

Python 2.6.6

版本:Oracle 12c


2.前提:安裝cx_Oracle模組依賴包

由於使用Python連線Oracle,所以需要下載oracle客戶端包

官網:

oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64.rpm

oracle-instantclient12.1-devel-12.1.0.2.0-1.x86_64.rpm

oracle-instantclient12.1-sqlplus-12.1.0.2.0-1.x86_64.rpm

1 [root@oracle ~]# rpm - ivh oracle-instantclient12.1-*


3.設定環境變數

[root@oracle ~]# cat ~/.bash_profile 

12 export /usr/lib/oracle/12.1/client64/export LD_LIBRARY_PATH=/usr/lib/oracle/12.1/client64/lib


4.安裝cx_Oracle模組

官網:

cx_Oracle-6.2.1.tar.gz 

12 [root@oracle ~]# tar -zxvf cx_Oracle-6.2.1.tar.gz [root@oracle cx_Oracle-6.2.1]# python setup.py install

可能會遇到報錯

error: command 'gcc' failed with exit status 1

解決方法:

yum install python-devel

yum install libevent-devel


5.檢視是否可以匯入cx_Oracle模組

[root@oracle ~]# python

Python 2.6.6 (r266:84292, Aug 18 2016, 15:13:37) 

[GCC 4.4.7 20120313 (Red Hat 4.4.7-17)] on linux2

Type "help", "copyright", "credits" or "license" for more information.

>>> import cx_Oracle

>>>  #無報錯說明成功


6.編寫Python連線oracle資料庫指令碼(oracle使用者,因為我這裡都是用oracle使用者許可權安裝的)

[oracle@oracle ~]$ cat py_oracle.py 


#!/usr/bin/env python#-*- coding: UTF-8 -*-import cx_Oracle  #匯入模組db=cx_Oracle.connect('system/oracle@localhost:1521/ORCL')  #連線user/passwd@host:埠/instancecursor = db.cursor() #建立遊標物件cursor.execute('select sysdate from dual')  #執行命令data = cursor.fetchone() #返回值print('Database time:%s' % data)  列印輸出cursor.close()  #關閉遊標物件db.close()  #關閉資料庫


7.執行指令碼

[oracle@oracle ~]$ python py_oracle.py 

1 Database time:2018-03-20 20:47:59


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/151/viewspace-2803619/,如需轉載,請註明出處,否則將追究法律責任。

相關文章