こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

Oracle-Perlの接続

Oracle と Perl の接続で悩んでいます。
申し訳ありませんが何方かご教授下さい。

OS:Red Hat Enterprise Linux ES release 4
Perl:perl v5.8.5
DB:oracle-xe-univ-10.2.0.1-1.0.i386

ドライバーは以下をインストールしてあります。
perl-DBD-Pg-1.31-6
perl-DBD-MySQL-2.9004-3.1
perl-DBI-1.40-8

以下もインストールしてみましたが駄目でした
# rpm -ivh oracle-instantclient12.1-basic-12.1.0.1.0-1.i386.rpm
# rpm -ivh oracle-instantclient12.1-devel-12.1.0.1.0-1.i386.rpm
# rpm -ivh oracle-instantclient12.1-sqlplus-12.1.0.1.0-1.i386.rpm

環境変数の設定(.bash_profileに以下を設定)
. /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin/oracle_env.sh

Perlでサンプルプログラムを作成して、他の同等のサーバでは正常に動作確認した
プログラムを、このサーバで実行すると以下の様なエラーが出ます。
[oracle@IJYOU]$ perl test_db.pl
install_driver(Oracle) failed: Can't locate DBD/Oracle.pm in @INC (@INC contains: /usr/lib/perl5/5.8.5/i386-linux-thread-multi /usr/lib/perl5/5.8.5 /usr/lib/perl5/site_perl/5.8.5/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.4/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.3/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.2/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.1/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.5 /usr/lib/perl5/site_perl/5.8.4 /usr/lib/perl5/site_perl/5.8.3 /usr/lib/perl5/site_perl/5.8.2 /usr/lib/perl5/site_perl/5.8.1 /usr/lib/perl5/site_perl/5.8.0 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.5/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.4/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.3/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.2/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.1/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.0/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.5 /usr/lib/perl5/vendor_perl/5.8.4 /usr/lib/perl5/vendor_perl/5.8.3 /usr/lib/perl5/vendor_perl/5.8.2 /usr/lib/perl5/vendor_perl/5.8.1 /usr/lib/perl5/vendor_perl/5.8.0 /usr/lib/perl5/vendor_perl .) at (eval 1) line 3.
Perhaps the DBD::Oracle perl module hasn't been fully installed,
or perhaps the capitalisation of 'Oracle' isn't right.
Available drivers: ExampleP, Pg, Proxy, mysql.
at /home/oracle/test2_setting.pl line 18

どうか何方かお願いします。

投稿日時 - 2014-05-30 20:41:00

QNo.8617252

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

10人が「このQ&Aが役に立った」と投票しています

回答(1)

ANo.1

エラーのとおりです。Oracleに接続するには、DBD-oracleが必要です。

http://search.cpan.org/~pythian/DBD-Oracle-1.74/lib/DBD/Oracle.pm

perl-DBD-Pg-1.31-6 <<PostgreSQL用ドライバ
perl-DBD-MySQL-2.9004-3.1 <<MySQL用ドライバ
perl-DBI-1.40-8 <<1DB毎の差分を吸収するためのインターフェース

Oracle用のドライバはインストールされていないようです。

投稿日時 - 2014-06-01 20:53:43

お礼

ご回答頂き誠にありがとう御座いました。

DBD-Oracle-1.74.tar.gz
perl-DBD-Oracle-1.19-1.el4.i386.rpm
等をインストールしようとしましたがエラーになってしまい
インストール出来ませんでしたが
cpan
でインストールしたら成功してOracle-Perlの接続も出来るようになりました。
返事が遅れて申し訳ありませんでした。

投稿日時 - 2014-06-11 00:08:50

あなたにオススメの質問