gpt4 book ai didi

python - 在 Windows 上轻松安装 cx_Oracle(python 包)

转载 作者:太空狗 更新时间:2023-10-29 17:24:32 26 4
gpt4 key购买 nike

所以我找到了Help installing cx_Oracle但我仍然卡住了。我从 oracle 下载了最新的 instantclient,并将 ORACLE_HOME 设置为提取文件的位置(直接和在 ORACLE_HOME 值和文件之间有一个 bin 文件夹),但是 easy_install 在运行 setup.py 时弹出错误说它不能'找不到 Oracle 包含文件。我确实注意到文件夹中只有 11g dll,我是否需要所有 3 个驱动程序才能完成安装?如果是这样,我什至从哪里得到它们?

最佳答案

老实说,从 binary installers 之一安装 cx_Oracle 要容易得多。他们有,而不是来自源头。

*nix 指南:

  1. 浏览到 Instant Client for Linux x86 download page.

  2. 下载适合您的架构(32 位或 64 位)的最新版本的 basic、sqlplus 和 sdk 包:

    • oracle-instantclient<version>-basic-<version_full>.<arch>.rpm
    • oracle-instantclient<version>-sqlplus-<version_full>.<arch>.rpm
    • oracle-instantclient<version>-devel-<version_full>.<arch>.rpm .
  3. 使用 alien 安装 RPM。例如,在撰写本文时:

    $ sudo alien -i oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64.rpm
  4. 添加必要的环境变量(我个人确实将其放入 /etc/environment 然后注销/重新登录以重新加载环境):

    ORACLE_HOME=/usr/lib/oracle/<version>/client64/lib/
    LD_LIBRARY_PATH=/usr/lib/oracle/<version>/client64/lib/
  5. Fix oracle's includes :

    $ sudo ln -s /usr/include/oracle/<version>/client $ORACLE_HOME/include  # for 32bits arch, OR
    $ sudo ln -s /usr/include/oracle/<version>/client64 $ORACLE_HOME/include # for 64bits arch
  6. 创建 /etc/ld.so.conf.d/oracle-instantclient<version>-basic.conf/etc/ld.so.conf.d/oracle.conf (对于更新的版本,至少从 12.1 开始)包含:

      /lib  
    /usr/lib/oracle/<version>/client/lib ; for 32bits arch, OR
    /usr/lib/oracle/<version>/client64/lib ; for 64bits arch
  7. 重新加载 ldconfig 缓存(如果你想要一些详细信息,请使用 -v 标志):

    $ sudo ldconfig

您可能需要安装 libaio1 .

如何安装 cx_Oracle

假设我们已经安装了 Oracle Instant Client 10,您有不同的安装选择 cx_Oracle :

  1. 安装 pip : $ pip install cx_oracle (仅限 Linux)
  2. cx_oracle PyPI 下载 installer/.tar.gz 文件网站

可以从here 下载旧版本(低于5.1.2 的版本是.msi 和.rpm 文件) .使用 alien 安装 RPM。例如,在撰写本文时: $ sudo alien -i cx_Oracle-5.0-10g-py25-1.x86.rpm

要测试,python -c 'import cx_Oracle; print cx_Oracle'应该返回模块及其版本。

关于python - 在 Windows 上轻松安装 cx_Oracle(python 包),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11245985/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com