【发布时间】:2026-01-24 11:10:01
【问题描述】:
我有两台分别运行 Python 2.4 和 2.6 的 RHEL 服务器。我需要访问的另一台服务器上有一个 Oracle 数据库。
我试图在我的 RHEL 服务器上安装 cx_oracle,但发现必须先安装 Oracle 客户端。
问题是,我没有权限在两台 RHEL 服务器上安装 Oracle 客户端。在同一台服务器上,Perl 程序可以使用以下命令连接到 Oracle 数据库:
DBI->connect("dbi:Oracle:host=myhost.prod.com;sid=prddb",'username','password')
在不安装 cx_oracle 和 Oracle 客户端的情况下,Python 可以做同样的事情吗?或者对如何自己编写一个模块来做同样的事情有什么建议?
提前致谢!
【问题讨论】:
-
为了让 Perl 工作,安装了一个 Oracle 驱动程序,它与安装在同一台机器上的 Oracle 客户端通信,然后与 Oracle 数据库通信。你需要在你想连接的机器上安装客户端软件,所以听起来你已经配置好了,只需要安装你的 Python 驱动程序和代码。 Oracle 是一家非常吝啬的公司,并且严格控制他们的驱动程序,因此您需要使用任何可能的方式与他们的客户交谈。如果这意味着 cx_oracle 那么你将不得不走那条路。
-
谢谢你们。我现在正在研究从 python 调用 perl DBI 模块。
-
不要那样做。这是一个复杂且不可行的解决方案。要么用 Perl 编写它,这将是我的第一条路径,因为我比 Python 更了解 Perl,或者使用纯 Python 并加载其所需的驱动程序;使用你更了解的那个。
标签: python oracle python-2.6 cx-oracle