cx_Oracle python模块安装

1. 需要从oracle网站下载一下两个包

instantclient-basic-linux.x64-11.2.0.4.0.zip

instantclient-sdk-linux.x64-11.2.0.4.0.zip

2. 下载后解压到某目录下,如:/oracle

3. 根据解压后的 BUILD.txt 步骤进行配置:

  3.1 

 cat .bash_profile 
# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi

# User specific environment and startup programs
ORACLE_HOME=/oracle/instantclient_11_2
PATH=$PATH:$HOME/bin:$ORACLE_HOME
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME:$ORACLE_HOME/sdk
export LD_LIBRARY_PATH
export PATH
配置bash_profile

  3.2

    python setup.py build
    python setup.py install

3.3如果出现如下错误,则需要安装 python-devel-2.6.6-64.el6.x86_64

cx_Oracle.c:6:20: error: Python.h: No such file or directory
cx_Oracle.c:7:22: error: datetime.h: No such file or directory
cx_Oracle.c:8:26: error: structmember.h: No such file or directory
In file included from cx_Oracle.c:142:
Buffer.c:13: error: expected specifier-qualifier-list before ‘PyObject’
Buffer.c: In function ‘cxBuffer_Init’:
Buffer.c:28: error: ‘udt_Buffer’ has no member named ‘obj’
Buffer.c: In function ‘cxBuffer_Copy’:
Buffer.c:44: warning: implicit declaration of function ‘Py_XINCREF’
Buffer.c:44: error: ‘udt_Buffer’ has no member named ‘obj’
Buffer.c:45: error: ‘udt_Buffer’ has no member named ‘obj’
Buffer.c:45: error: ‘udt_Buffer’ has no member named ‘obj’
View Code
原文地址:https://www.cnblogs.com/yiyuf/p/4842728.html