2010-01-18 4 views
0

내가 오라클과 인터페이스 DBI를 사용하는 스크립트를 가지고 있지만, 나는 다음과 같은 오류가 계속 :유닉스 오라클/펄 드라이버 문제

install_driver(Oracle) failed: Can't load '/usr/opt/perl5/lib/site_perl/5.005/aix/auto/DBD/Oracle/Oracle.s o' for module DBD::Oracle: dlopen: /usr/opt/perl5/lib/site_perl/5.005/aix/auto/DBD/Oracle/Oracle.so: can't load library /usr/opt/perl5/lib/site_perl/5.005/aix/auto/DBD/Oracle/Oracle.so50 /usr/oracle/lib/libclnts h.a shr.o103 /usr/oracle/lib/libclntsh.a shr.ocan't load library /usr/oracle/lib/libclntsh.a50 /usr/oracle /lib/libclntsh.a at /usr/local/lib/perl5/5.6.0/aix/DynaLoader.pm line 200. at (eval 1) line 3 Compilation failed in require at (eval 1) line 3. Perhaps a required shared library or dll isn't installed where expected at ./dbi_test.pl line 9

Line 9 is were id do the prepare statement in my perl script: my $sth = $dbh->prepare('Sql statement here') or die "Couldn't prepare statement: " . $dbh->errstr;

나는 보았다 나는 펄의 2 개 버전이에 설치를/usr/opt/perl5/lib/site_perl/디렉토리 : 5.005 및 5.8.0

내 상사는 AIX 버전이 하나의 버전을 설치하고 오라클 버전이 다른 버전을 설치한다고 알려주었습니다. 그래서 나는 잘못된 드라이버를로드하고 있다고 생각하지만 확실하지 않습니다.

누구에게 무슨 문제가 있는지 알고 있습니까?

도움을 주시면 감사하겠습니다.

답변

1

5.8 perl 설치에서 DBI 드라이버를 설치했지만 스크립트가 실행될 때 시스템이 5.005 설치를 사용하고있는 것 같습니다 (PATH 설정 때문일 수 있음). 경로를 변경하여 5.8 실행 파일을 사용하고 PERL5LIB 환경 변수를 5.8 라이브러리 경로를 포함하도록 설정하십시오.

5.005 버전을 사용해야하는 경우 해당 버전 아래에 DBI도 설치하십시오.