说明: 本文档内容基于Python 2.7.8版本进行操作。


一、下载cx_Oracle

    下载地址: https://pypi.python.org/pypi/cx_Oracle/5.1.3

wKioL1RvCPjzzRUhAAh1UUbWw-U757.jpg


二、下载Oracle客户端驱动(Oracle Instant Client Basic)

    下载地址: http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html

wKioL1RvCd3SgOcJAAbs-Kd7KDw442.jpg


三、Windows下载及安装

    3.1 选择下载文件

wKiom1RvCeWgMJ-ZAAaTWaRUYdI958.jpg


    3.2 点击下载文件后,会进入到登陆页面,登陆后就可以下载了.

wKioL1RvCuvTsj-xAANAqJ_kKh4703.jpg

    3.3 输入用户名密码后,点击登陆按钮,则会弹出文件下载框。

wKiom1RvCrPQZvXmAASRoqMIHC8431.jpg

    

    3.4 双击打开文件,全部都是下一步,完成安装。

wKioL1RvC2fx6mt8AAA-_G2hZHo762.jpg


    3.5 解压文件

wKiom1RvC1fxS9E4AABiFqcGe7I962.jpg


    3.6 进入到解压目录中

wKioL1RvC_uxeEjLAAAwr9GAcdE419.jpg


    3.7 选中全部文件复制,然后粘贴到C:\Python27\Lib\site-packages\目录下

wKiom1RvC7mT5HkiAANkq9qUZ0Q816.jpg


    3.8 完成上述四个步骤之后,打开Pycharm会出现cx_Oracle模块

wKioL1RvDHGCkeGQAAjbIy_9ass564.jpg

    3.9 尝试编写几行代码来连接Oracle 10g数据库,看是否能正常工作.

    第一种连接方法 cx_Oracle.connect()

wKiom1RvDDTx4vz0AAWdI5stJVk892.jpg

    第二种连接方法 cx_Oracle.makedsn()

wKioL1RvDRjA5Hx7AAYQ2XJAogQ695.jpg



四、Linux下载及安装

    4.1 下载Oracle Instant Client BasicSDK

wKioL1RvDYPQXYoYAAbY0hRLjzQ104.jpg

    4.2 安装客户端和SDK

[root@localhost ~]# mkdir /opt/oracle/
[root@localhost ~]# unzip instantclient-basic-linux.x64-11.2.0.4.0.zip -d /opt/oracle/
[root@localhost ~]# unzip instantclient-sdk-linux.x64-11.2.0.4.0.zip -d /opt/oracle/
 
# 设置环境变量(注意: 这种环境变量的定义方式,只能是当本机没有Oracle数据库时,才能定义ORACLE_HOME,若已经安装了ORACLE,则不能随便乱更改ORACLE_HOME)。
[root@localhost ~]# export ORACLE_HOME=/opt/oracle/instantclient_11_2
[root@localhost ~]# 
echo "export ORACLE_HOME=/opt/oracle/instantclient_11_2" >> /etc/profile

# 创建一个动态链接, 这步操作如果不做,则会导致整个驱动无法完成编译.
[root@localhost ~]# 
ln -s /opt/oracle/instantclient_11_2/libclntsh.so.11.1 /opt/oracle/instantclient_11_2/libclntsh.so
# 将动态库文件复制或软链到/lib64/目录下,否则安装完成后,调用cx_Oracle会报错.
[root@localhost ~]# 
find $ORACLE_HOME -type f | grep "\.so" | xargs cp --target-directory=/lib64/
 
# 开始编译并安装cx_Oracle
[root@localhost ~]# tar zxvf cx_Oracle-5.1.3.tar.gz
[root@localhost ~]# cd cx_Oracle-5.1.3
[root@localhost cx_Oracle-5.1.3]# /usr/local/Python-2.7.8/bin/python setup.py build
[root@localhost cx_Oracle-5.1.3]# /usr/local/Python-2.7.8/bin/python setup.py install


    4.3 编写一个Oracle连接程序

[root@localhost cx_Oracle-5.1.3]# cd ~/
[root@localhost ~]# vim connect_oracle.py
#!/bin/env python
# -.- coding:utf-8 -.-
 
import cx_Oracle as cx
 
con = cx.connect("vids/vids123@192.168.3.235:1521/vids")
print con.version
con.close()
 
[root@localhost ~]# /usr/local/Python-2.7.8/bin/python connect_oracle.py
10.2.0.1.0