Python 安装 cx_Oracle

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


一、下载cx_Oracle

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


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

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


三、Windows下载及安装

    3.1 选择下载文件


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

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

    

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


    3.5 解压文件


    3.6 进入到解压目录中


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


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

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

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

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



四、Linux下载及安装

    4.1 下载Oracle Instant Client BasicSDK

    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/[email protected]: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


本文出自 “软件测试” 博客,请务必保留此出处http://9614554.blog.51cto.com/9604554/1580992

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。