用一个系统监控两个不同版本的Oracle数据库
12.1 和 10.1
为每个安装了 Oracle 客户端、sdk、sqlplus,我可以通过设置适当的值后设置这些来查询 12.1 db 或 10.1
export LD_LIBRARY_PATH=
export PATH=
export ORACLE_BASE=
export ORACLE_HOME=
export TNS_ADMIN=`
但是 Perl 似乎并没有选择不同的版本。我得到:
严重 - 无法连接到 10.16.183.98:1521/CV。 ORA-03134: 不再支持与该服务器版本的连接。 (DBD 错误:OCISessionBegin)
表示它仅使用 12.1 尝试连接到 10.1。能够从 Perl 查询两个不同 Oracle 数据库版本的最佳方法是什么?
最佳答案
当您尝试通过环境变量来控制它时,我假设您不需要在同一个程序中与两个数据库对话。
如果我没记错的话,DBD::Oracle需要针对您打算使用它的特定 Oracle 客户端构建。因此,您可能希望将两个不同版本的库编译到单独的目录中,并使用 lib
指向您希望使用的特定版本。
关于linux - 使用 Perl 的多个 Oracle 版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30244684/