我一直在使用 32 位 Python 3.6 并使用 32 位 oracle 即时客户端连接到 oracle 数据库。
我当前的项目要求我使用 64 位 python 3.8,因为我需要使用不同的库。这将需要我使用 oracle 即时客户端 64 位,我想使用 CX oracle。
我担心的是我可能会在安装两者时遇到问题。有没有人同时安装了 32 位和 64 位版本并且可以毫无问题地运行 CX oracle 的两个实例?
我没有在我的系统上安装它,因为我需要工作场所的批准。我还担心下载可能放在我不知道的位置,如果我安装两个版本我将无法修复它。
根据我看到的问题,oracle 客户端在 32 位和 64 位上都做得不好,但没有提到 oracle INSTANT 客户端。
编辑:我试过使用
python-oracledb
,但我的登录遇到了case_sensitive_logon
被设置为False
的问题。为了解决这个问题,我将不得不使用厚驱动程序,它需要基于我阅读过的文档的即时客户端,这让我回到了同样的问题。
Instant Client ZIP 文件可以安装到您喜欢的任何子目录中。您可以将 32 位和 64 位安装到同一台计算机上的不同位置。在运行时,您需要将库搜索路径设置为您要运行的工具的相应 Instant Client 目录。例如,在 Windows 上,您需要设置 PATH。在 Linux 上,您需要设置 LD_LIBRARY_PATH。通常这可以在批处理或 shell 脚本中完成,同时调用您的工具或程序。
如评论中所述,最新版本的 cx_Oracle,现在称为 python-oracledb,不一定需要 Instant Client,因此您应该/可以考虑升级。请参阅python-oracledb 发布公告。