Проблема с драйвером Unix Oracle / Perl - PullRequest
0 голосов
/ 18 января 2010

У меня есть скрипт, который использует DBI для взаимодействия с Oracle, но я продолжаю получать следующую ошибку:

install_driver (Oracle) не удалось: не удается нагрузка «/usr/opt/perl5/lib/site_perl/5.005/aix/auto/DBD/Oracle/Oracle.s o 'для модуля DBD :: Oracle: dlopen: /usr/opt/perl5/lib/site_perl/5.005/aix/auto/DBD/Oracle/Oracle.so: не могу загрузить библиотеку /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 загрузить библиотеку /usr/oracle/lib/libclntsh.a50 / usr / oracle /lib/libclntsh.a в /usr/local/lib/perl5/5.6.0/aix/DynaLoader.pm линия 200. в (eval 1) строка 3 Компиляция не удалась в require at (eval 1) строка 3. Возможно, требуется общий доступ библиотека или DLL не установлена ​​где ожидается в ./dbi_test.pl строка 9

Строка 9 - это подготовка утверждение в моем скрипте Perl: мой $ sth = $ dbh-> prepare ('здесь выписка Sql') или умри "Не могу подготовить заявление". $ Dbh-> ErrStr;

Я посмотрел, и у меня есть 2 версии Perl, установленные в каталоге / usr / opt / perl5 / lib / site_perl /: 5,005 и 5,8,0

Мой начальник сообщил мне, что версия AIX устанавливает одну версию, а наша версия Oracle устанавливает другую. Я думаю, что загружаю не тот драйвер, но не уверен.

Кто-нибудь видит, в чем может быть проблема?

Любая помощь приветствуется.

1 Ответ

1 голос
/ 18 января 2010

Похоже, что вы, возможно, установили драйвер DBI при установке Perl 5.8, но система использует установку 5.005 при запуске вашего скрипта (возможно, из-за настройки PATH). Измените свой путь, чтобы использовать исполняемый файл 5.8, и установите переменную среды PERL5LIB, включив в нее пути к 5.8 библиотекам.

Если вам нужно использовать версию 5.005, установите DBI и под этой версией.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...