Anaconda 3.5(64位Windows)安装cx_Oracle

时间:2016-01-06 16:24:04

标签: python oracle anaconda cx-oracle

我已经为Windows 64位安装了Anaconda 3.5,我需要使用软件包" cx_Oracle"连接到Oracle数据库。

我尝试使用anaconda方式:

conda install -c https://conda.anaconda.org/anaconda cx_oracle

以下错误消息:

Hint: the following packages conflict with each other:
  - cx_oracle
  - python 3.5*
Use 'conda info cx_oracle' etc. to see the dependencies for each package.
Note that the following features are enabled:
  - vc14

似乎cx_oracle与Python 3.5不兼容。

在此之后,我还尝试直接使用二进制文件安装:

python setup.py install

它引发了一堆错误,如:

cx_Oracle.obj : error LNK2001: unresolved external symbol OCILobGetChunkSize
cx_Oracle.obj : error LNK2001: unresolved external symbol OCIStmtExecute
cx_Oracle.obj : error LNK2001: unresolved external symbol OCILobFileClose

有没有办法为Anaconda 3.5安装cx_oracle?

2 个答案:

答案 0 :(得分:1)

这有点不重要。无论如何。请按照以下步骤操作:

1)从

下载适用于Windows x64的Oracle Instant Client

http://www.oracle.com/technetwork/topics/winx64soft-089540.html

e.g。选择客户端11.2.0.4

- > instantclient-basic-windows.x64-11.2.0.4.0.zip

- > instantclient-sdk-windows.x64-12.1.0.2.0.zip

2)创建目录并解压缩客户端& sdk在那里:

e.g。 C:\ ORA \ 11gx64

3)设置ORACLE_HOME和TNS_ADMIN

有关详细信息,请参阅https://superuser.com/questions/949560/how-do-i-set-system-environment-variables-in-windows-10

e.g。 ORACLE_HOME = C:\ ORA \ 11gx64

TNS_ADMIN = c:\ ora \ 11gx64

还在%PATH%

中添加%ORACLE_HOME%

4)在创建的目录中,将文件tnsnames.ora填入并填充连接字符串到db:

%ORACLE_HOME%** ** tnsnames.ora中

XE =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = XE)
    )
  )

- >将127.0.0.1替换为您的主机名

- >用您的SID替换XE

5)我想你已经安装了Python。

- >否则,请访问Python的下载页面

- >安装python(写入时为3.6.1)

- >如果没有安装,请安装pip(https://pip.pypa.io/en/stable/installing/#do-i-need-to-install-pip

- >执行 python get-pip.py

6)下载并安装Visual C ++ 2015构建工具

- >搜索Visual C ++ 2015构建工具    - >安装visualcppbuildtools_full.exe

7)使用pip安装cx_oracle

  pip install cx_oracle

(在撰写本文时,默认安装版本5.3存在问题,因此必须安装版本6.0b2)

  python -m pip install cx_Oracle --pre

对于conda和pip,我的第一步是普遍的看法。

答案 1 :(得分:0)

我无法从pip3或conda安装cx_oracle。最终通过从pypi https://pypi.python.org/pypi/cx_Oracle/

下载Windows 64的安装程序来实现它