首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Perl DBD::Oracle模块安装

Perl DBD::Oracle模块安装
EN

Stack Overflow用户
提问于 2012-07-10 14:04:38
回答 4查看 65.1K关注 0票数 23

有人能指导我如何安装Perl DBD::Oracle模块吗?

以下是我到目前为止所做的工作:

  • Platform: RHEL 5.8 64位
  • 安装了Perl DBI package
  • Installed Oracle Instant client for Linux64位(基本+ sdk + sqlplus组件 instant client for the instant client
    • 已设置正确的$ORACLE_HOME和sqlplus当我执行perl Makefile.pl操作时失败,并显示以下错误:

我找不到你的甲骨文版本号...努力尝试警告:我无法确定Oracle客户端版本,因此我将仅默认使用版本8.0.0.0。DBD::Oracle的某些功能可能不起作用。Makefile.PL中基于Oracle版本的逻辑可能会产生错误结果。您可以使用"perl Makefile.PL -V X.Y.Z“指定您的客户端版本。Oracle version8.0.0.0 (8.0) DBD::Oracle不再支持9.2之前的Oracle客户端版本,请尝试使用1.25之前的版本作为9,1.18作为8!在第271行。

  • Makefile.PL instant client version: 11.1.0

  • DBD::Oracle version is 1.44

如果您已经成功安装了Oracle instant client,那么您能告诉我我遗漏了什么吗?

是否可以在不使用Oracle即时客户端的情况下安装DBD::Oracle

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-07-10 14:54:18

如果缺少ExtUtils-MakeMaker模块,则安装Perl DBI模块,安装低于3 RPM ($ yum install perl-DBI)

oracle-即时客户端11.2-basic-11.2.0.3.0-1 oracle-即时客户端11.2-devel 11.2.0.3.0-1 oracle-instantclient11.2-sqlplus-11.2.0.3.0-1

我使用的是64位Linux box,因此请相应地选择您的RPM文件名。像sudo yum -y install oracle-instantclient*rpm应该做的事情)

  • 设置在变量下面:

导出LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/lib导出ORACLE_HOME=/usr/lib/oracle/11.2/client64

MacOS用户需要:

DYLD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64/

另外,从CPAN

  • untar模块将ORACLE_HOME添加到PATH PATH DBD::Oracle中,并按给定的顺序运行以下命令:

perl Makefile.PL make sudo make install

如果您收到关于缺少gcc的投诉,您可以(临时)安装它,然后将其删除。

完成!

我遇到的问题是由于错误的LD_LIBRARY_PATH造成的。我将其设置为/usr/lib/oracle/11.2/client64,而正确的值是/usr/lib/oracle/11.2/client64/lib

当然,对于像我这样的新手来说,这是一次很好的学习。

票数 46
EN

Stack Overflow用户

发布于 2014-12-22 23:34:47

您还可以阅读我的文章How to install DBD::Oracle,其中包含安装DBD::Oracle CPAN模块所需的所有步骤,这不是一个简单的安装。这样做的目的是减少头痛,并将其转变为可重复的过程。

票数 6
EN

Stack Overflow用户

发布于 2017-07-11 23:02:59

下面是我在CentOS 7.2上使用yum包和CPAN所做的工作。这假设您使用的是Oracle 12.1版,但我认为大多数版本都是这样工作的。

安装Oracle Instant Client

代码语言:javascript
复制
yum install oracle-instantclient12.1-basic-12.1.0.2.0-1 oracle-instantclient12.1-devel-12.1.0.2.0-1 oracle-instantclient12.1-sqlplus-12.1.0.2.0-1

Copy演示制作文件

安装时期望演示文件位于/usr/share/oracle/12.1/client64中,但是yum包安装将它们放在/usr/share/oracle/12.1/client64/ *.mk中。

代码语言:javascript
复制
sudo cp /usr/share/oracle/12.1/client64/demo/* /usr/share/oracle/12.1/client64

修改.bashrc

将以下行添加到您的~/.bashrc

代码语言:javascript
复制
export ORACLE_HOME=/usr/lib/oracle/12.1/client64
export LD_LIBRARY_PATH=/usr/lib/oracle/12.1/client64/lib
export PATH=$ORACLE_HOME:$PATH

现在创建文件源文件

代码语言:javascript
复制
source ~/.bashrc

更新CPAN和DBI

将CPAN和DBI更新为最新版本

代码语言:javascript
复制
cpan> install CPAN
cpan> reload cpan
cpan> install DBI

Oracle安装DBD::

代码语言:javascript
复制
cpan> install DBD::Oracle
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11407513

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档