> I've tried setting every standard Oracle environment
> variable in both httpd.conf (even using both SetEnv
> and PerlSetEnv) and in the script itself (NLS_LANG,
> ORACLE_HOME, LD_LIBRARY_PATH, ORACLE_SID).  What am I
> missing? 

DBD::Oracle needs these variables when DBD::Oracle is loaded.  which means
they need to be in %ENV _before_ the script that first use()s DBD::Oracle is
loaded.  httpd.conf is generally too late if you preload your modules via a
startup.pl, or a module you PerlModule itself somehow loads it.

the typical way to do this is to place something like the following in your
startup.pl

  BEGIN {
    $ENV{ORACLE_HOME} = ...
  }

  use DBD::Oracle;

see recipe 2.9 in the mod_perl developer's cookbook as a reference, if you like.

HTH

--Geoff

Reply via email to