>Сам такое не делал, но теоретически получается такая конструкция:
спасибо за участие
>1. Поставить клиента Oracle 7
>3. Сказать в ORA_HOME, где он
>4. Подхачить DBD::Oracle, чтобы он стал DBD::Oracle7 и искал клиента в
>
> $ENV{ORA7_HOME}
>5. Собрать и установить DBD::Oracle7
>6. Поставить клиента Oracle 9
>7. Сказать в ORA_HOME, где он
>8. Подхачить DBD::Oracle, чтобы он стал DBD::Oracle9 и искал клиента в
>
> $ENV{ORA9_HOME}
>9. Собрать и установить DBD::Oracle9
>10. В своей программе установить ENV{ORA7_HOME} и ENV{ORA9_HOME} перед
> использованием соответствующего DBD::OracleX->connect
нечто подобное и сделал, только ничего не "хачил"
собрал по отдельности DBD::Oracle для седьмой и девятой версий клиентов.
переместил их из auto каталога перла в другой каталог. А затем устанвливаю
необходимые для одной вресии клиента переменные и форкаю процесс, то же самое делаю и для другой версии. Форкать приходится из-за того, что
LD_LIBRARY_PATH не меняется динамически. По крайней мере у меня не получилось.
[code]
BEGIN {
$ENV{ORACLE_HOME}="/ora/db";
$ENV{NLS_LANG}="RUSSIAN_CIS.CL8MSWIN1251";
$ENV{LD_LIBRARY_PATH}="/ora/db/lib:/ora/DBD_oracle805";
$ENV{ORA_NLS33}="/ora/db/ocommon/nls/admin/data";
}
}
fork ...
[/code]
и
[code]
BEGIN {
$ENV{ORACLE_HOME}="/opt/oracle/product/9.2.0";
$ENV{NLS_LANG}="AMERICAN_AMERICA.UTF8";
$ENV{LD_LIBRARY_PATH}="/home/tolik/perl_dbd_ora92_backup/Oracle";
}
fork ...
[/code]