如何使用 perl 访问两个不同版本(8i 和 9)的 Oracle 数据库?

发布于 2024-10-08 01:57:34 字数 364 浏览 9 评论 0原文

我当前正在使用 Perl 模块 DBI (1.613) 和 DBD::Oracle (1.26) 访问 Oracle 数据库版本 9i (9.2.0.8.0)。该项目的当前范围现在要求我访问版本 8i (8.1.7.4.0 ) Oracle 数据库,并且根据 DBD::Oracle 项目,我只能使用 DBD::Oracle 版本 1.20 或更低版本访问第二个数据库。

我知道我可能使用 DBD 版本 1.20 来访问这两个数据库,但我想知道是否可以安装两个版本的 DBD 模块并为每个数据库使用可接受的版本(不太容易出错)。

I'm currently accessing an Oracle database version 9i (9.2.0.8.0) using perl modules DBI (1.613) and DBD::Oracle (1.26). The current scope of the project now requires that I access a version 8i (8.1.7.4.0 ) Oracle database and, according to the DBD::Oracle project, I can only access this second database with a DBD::Oracle version 1.20 or below.

I know I could possibly use the DBD version 1.20 to access both databases, but I was wondering if its possible to have installed the two versions of the DBD module and use the acceptable version for each database (less prone to errors).

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

追风人 2024-10-15 01:57:34

我不认为服务器版本与您可以使用的 DBD::Oracle 版本有任何关系,仅与您安装的客户端库版本有关。 Oracle 客户端库的 9.2、10.1 和 10.2 版本支持连接到 Oracle 服务器 8.1.7.4,并且最新版本的 DBD::Oracle 仍然与 9.2 及以上的所有客户端库兼容,因此我认为您不会实际上有任何问题。但是,如果您安装版本 11 客户端,您将无法连接到 9.2.0 以下的服务器版本。

I don't believe that the server version has any bearing on the DBD::Oracle version you can use, only the version of the client libraries that you install. The 9.2, 10.1, and 10.2 versions of the Oracle client libraries support connecting to Oracle server 8.1.7.4, and the latest version of DBD::Oracle remains compatible with all client libraries from 9.2 up, so I don't think that you will actually have any problem at all. However, if you install the version 11 client, you will lose the ability to connect to server versions below 9.2.0.

没企图 2024-10-15 01:57:34

将不同版本的 DBI/DBD::Oracle 安装到两个不同的位置,请参阅 INSTALL_BASE/--install_base。通过适当设置 PERL5LIB 来单独访问它们。

local::lib 帮助您自动化整个过程。

Install the different versions of DBI/DBD::Oracle into two different places, see INSTALL_BASE/--install_base. Access them seperately by setting PERL5LIB appropriately.

local::lib helps you automate this whole affair.

江湖正好 2024-10-15 01:57:34

如果您想从同一程序运行访问两个数据库版本,您可以执行以下操作:

  • 使用 local::lib

  • 使用 运行 DBD::Proxy 服务器@LIB 配置为加载一个版本的 DBD::Oracle

  • 运行您的脚本,配置了@LIB来加载另一个版本的DBD ::Oracle

  • 在脚本中照常使用 DBD::Oracle 连接到一个数据库并另一个通过代理。

If you want to access the two database versions from the same program run you can do as follows:

  • install both versions in your system using local::lib

  • run a DBD::Proxy server with @LIB configured to load one version of DBD::Oracle

  • run your script with @LIB configured to load the other version of DBD::Oracle

  • in your script connect to one database using DBD::Oracle as usual and to the other one through the proxy.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文