RHEL 6.4 安装 cx_Oracle

来源:互联网 发布:速卖通数据分析 编辑:程序博客网 时间:2024/04/30 03:48

迁移服务器,还想继续用nginx+uwsgi+bottle 这一套机制,但是别人提供的服务器系统是RHEL6.4的,数据库为Oracle 10g,

需要安装python 的cx_Oracle 模块才能访问数据库。

最关键的是,服务器置于私网中,不给配置外网访问权限。

RHEL6.4 自带的pytho 是2.66版本的,目前最新的版本分两类:2.7.×和3.3 ,并且 这两不兼容,坑。能用,也懒得升级了。


一、cx_Oracle下载

我想说:官网(https://pypi.python.org/pypi/cx_Oracle)上给的一点不靠谱,最新5.1.3,给了好多WIN版本,linux的就一个tar.gz源码包,

把源码包下载下来,里面的说明文件(BUILD.txt 、README.txt)也不知道是什么时候写的,求更新下。。


还是rpm包靠谱点。

建议大家到http://sourceforge.jp/projects/sfnet_cx-oracle/releases/下载

cx_Oracle-5.1.1-10g-py26-1.x86_64.rpm

在下载的时候,请大家下载对应版本的包,

其中包括:

1、python 的版本2.6

2、所使用的Oracle数据版本10g

3、系统的位数(64位)


下载 后,安装时会提示:

Traceback (most recent call last):
  File "setup.py", line 132, in <module>
    raise DistutilsSetupError("cannot locate an Oracle software " \
distutils.errors.DistutilsSetupError: cannot locate an Oracle software installation


需要下载Oracle 的instantclient-linux-basic' and  instantclient-sdk-linux (源码安装包里的BUILD说明文件里要求的,给的下载链接返回个404,就不能更新下么。。。。)

这里是自己去官网上下载的地址:

http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html

下载的时候选择合适 的版本(上面下载的(cx_Oracle包是支持oracle 10g的,所以客户端也得下载10g的版本,否则装上了以后会找不到相关文件),

oracle-instantclient-basic-10.2.0.5-1.x86_64.rpm

oracle-instantclient-devel-10.2.0.5-1.x86_64.rpm

#yum install oracle-instantclient-basic-10.2.0.5-1.x86_64.rpm

#yum install oracle-instantclient-devel-10.2.0.5-1.x86_64.rpm

安装后

在root的.bash_profile中添加环境变量

   export ORACLE_HOME=/usr/lib/oracle/10.2.0.5/client64/lib
   export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME

#source /root/.bash_profile


然后安装cx_Oracle

#yum install cx_Oracle-5.1.1-10g-py26-1.x86_64.rpm


import cx_Oracle成功。





0 0
原创粉丝点击