The LD_LIBRARY_PATH looks bigger than it needs to be. Normally the Perl
interpreter knows where to find the shared libraries in its library tree.
If you add all those directories (including $ORACLE_HOME/lib) inside the
script, the Sun dynamic loader may not be aware of them. LD_LIBRARY_PATH
(and probably SHLIB_PATH) _really_ needs to be set before perl starts. If
you can't get the webmaster to put the necessary directories in the variable
for you, you may need to set it in a wrapper script that calls your perl
program.
--
Mac :})
** I normally forward private database questions to the DBI mail lists. **
Give a hobbit a fish and he'll eat fish for a day.
Give a hobbit a ring and he'll eat fish for an age.
----- Original Message -----
From: "Antonio Hern�ndez" <[EMAIL PROTECTED]>
To: "'Michael A. Chase'" <[EMAIL PROTECTED]>
Cc: <[EMAIL PROTECTED]>
Sent: Monday, April 30, 2001 6:27 AM
Subject: RE: DBD-Oracle
> I have probe this, and the result is ok, in web browser I can see all vars
> allright,
>
> # Cargamos las variables de entorno del profile del usuario UNIX
> $ENV{'ORACLE_HOME'}='/opt/oracle/product/8.0.6';
> $ENV{'ORACLE_SID'}='RUMBO';
>
$ENV{'LD_LIBRARY_PATH'}='/usr/local/lib/perl5/site_perl/5.005/sun4-solaris/D
> BI:/usr/local/lib/perl5/site_perl/5.005/sun4-solaris/DBD
>
:/usr/local/lib/perl5/5.00503:/usr/local/lib/perl5/site_perl/5.005/sun4-sola
> ris/auto/DBI:/usr/local/lib/perl5/site_perl/5.005/sun4-s
>
olaris:/usr/local/lib/perl5/5.00503/sun4-solaris:/var/rw/workspaces/SOLARIS2
> 6/SUNPRO42/4d/lib:/var/rw/workspaces/SOLARIS26/SUNPRO42/
>
12d/lib::/usr/local/lib/perl5/site_perl/5.005/sun4-solaris/DBI:/usr/local/li
> b/perl5/site_perl/5.005/sun4-solaris/DBD:/usr/local/lib/
>
perl5/5.00503:/usr/local/lib/perl5/site_perl/5.005/sun4-solaris/auto/DBI:/us
> r/local/lib/perl5/site_perl/5.005/sun4-solaris:/usr/loca
>
l/lib/perl5/5.00503/sun4-solaris:/usr/lib:/usr/ccs/lib:/opt/SUNWspro/lib:/us
> r/openwin/lib:/opt/bv1to1/lib:/opt/bv1to1/lib/objects:/o
>
pt/bv1to1/orbix/corba2/lib:/opt/bv1to1/rogue/lib:/opt/oracle/product/8.0.6/l
> ib:/opt/jiat/jiat/lib';
>
$ENV{'PATH'}='/usr/local/bin:/opt/SUNWspro/bin:/usr/ccs/bin:/usr/sbin:/bin:/
> usr/bin:/usr/ucb:/etc:/usr/openwin/bin:/opt/bv1to1/bin:/
>
opt/bv1to1/orbix/bin:/opt/oracle/product/8.0.6/bin:/opt/gnu/bin:/opt/ode/scr
> ipts:.:/usr/local/bin:/usr/ccs/bin:/usr/ucb:/usr/local/b
>
in:/usr/ccs/bin:/usr/ucb:/usr/ccs/bin:/usr/sbin:/bin:/usr/bin:/usr/local/bin
> :/usr/ucb:/etc:/usr/openwin/bin:/opt/bv1to1/bin:/opt/bv1
> to1/orbix/bin:/opt/oracle/product/8.0.6/bin:/opt/gnu/bin';
>
$ENV{'SHLIB_PATH'}='/opt/bv1to1/lib:/opt/bv1to1/lib/objects:/opt/bv1to1/orbi
> x/original/lib:/opt/bv1to1/rogue/lib:/opt/oracle/product
> /8.0.6/lib:.:/opt/bv1to1/orbix/lib:/opt/jiat/jiat/dynobjs';
> # Preparamos el modulo de conexion a base de datos
> use DBI;
>
> # Definicion de las variables de conexion de la DB
> my $base_datos="rumbo"; # Nombre de la base de datos
> my $usuario="jiat_Test_jiat_rumbo1_t"; # Usuario de la BD
> my $clave="jiat_Test_jiat_rumbo1_t"; # Passwd de la BD
> my $driver="Oracle"; # Usamos el driver de oracle
> my $tabla_usuarios = "bv_user"; # Nombre de la tabla que
vamos
> a consultar
> my $sql_consulta = "select user_alias from bv_user"; # Creamos la
sentencia
> SQL
>
> # Escribimos la cabecera de la pagina HTML
>
> print "Content-type: text/html\n\n";
> print "<font size=+1>Enviroment</font><p>\n";
> foreach (sort keys %ENV)
> {
> print "$_: $ENV{$_}<br>\n";
> }
> exit;
> --------------------------------------------------------------------------
--
> --------------
>
> but if I execute this perl script , it don't work allright. I can see the
> same error
> can you help me?
>
> #!/usr/local/bin/perl
>
> # Cargamos las variables de entorno del profile del usuario UNIX
> $ENV{'ORACLE_HOME'}='/opt/oracle/product/8.0.6';
> $ENV{'ORACLE_SID'}='RUMBO';
>
$ENV{'LD_LIBRARY_PATH'}='/usr/local/lib/perl5/site_perl/5.005/sun4-solaris/D
> BI:/usr/local/lib/perl5/site_perl/5.005/sun4-solaris/DBD
>
:/usr/local/lib/perl5/5.00503:/usr/local/lib/perl5/site_perl/5.005/sun4-sola
> ris/auto/DBI:/usr/local/lib/perl5/site_perl/5.005/sun4-s
>
olaris:/usr/local/lib/perl5/5.00503/sun4-solaris:/var/rw/workspaces/SOLARIS2
> 6/SUNPRO42/4d/lib:/var/rw/workspaces/SOLARIS26/SUNPRO42/
>
12d/lib::/usr/local/lib/perl5/site_perl/5.005/sun4-solaris/DBI:/usr/local/li
> b/perl5/site_perl/5.005/sun4-solaris/DBD:/usr/local/lib/
>
perl5/5.00503:/usr/local/lib/perl5/site_perl/5.005/sun4-solaris/auto/DBI:/us
> r/local/lib/perl5/site_perl/5.005/sun4-solaris:/usr/loca
>
l/lib/perl5/5.00503/sun4-solaris:/usr/lib:/usr/ccs/lib:/opt/SUNWspro/lib:/us
> r/openwin/lib:/opt/bv1to1/lib:/opt/bv1to1/lib/objects:/o
>
pt/bv1to1/orbix/corba2/lib:/opt/bv1to1/rogue/lib:/opt/oracle/product/8.0.6/l
> ib:/opt/jiat/jiat/lib';
>
$ENV{'PATH'}='/usr/local/bin:/opt/SUNWspro/bin:/usr/ccs/bin:/usr/sbin:/bin:/
> usr/bin:/usr/ucb:/etc:/usr/openwin/bin:/opt/bv1to1/bin:/
>
opt/bv1to1/orbix/bin:/opt/oracle/product/8.0.6/bin:/opt/gnu/bin:/opt/ode/scr
> ipts:.:/usr/local/bin:/usr/ccs/bin:/usr/ucb:/usr/local/b
>
in:/usr/ccs/bin:/usr/ucb:/usr/ccs/bin:/usr/sbin:/bin:/usr/bin:/usr/local/bin
> :/usr/ucb:/etc:/usr/openwin/bin:/opt/bv1to1/bin:/opt/bv1
> to1/orbix/bin:/opt/oracle/product/8.0.6/bin:/opt/gnu/bin';
>
$ENV{'SHLIB_PATH'}='/opt/bv1to1/lib:/opt/bv1to1/lib/objects:/opt/bv1to1/orbi
> x/original/lib:/opt/bv1to1/rogue/lib:/opt/oracle/product
> /8.0.6/lib:.:/opt/bv1to1/orbix/lib:/opt/jiat/jiat/dynobjs';
> # Preparamos el modulo de conexion a base de datos
> use DBI;
>
> # Definicion de las variables de conexion de la DB
> my $base_datos="rumbo"; # Nombre de la base de datos
> my $usuario="jiat_Test_jiat_rumbo1_t"; # Usuario de la BD
> my $clave="jiat_Test_jiat_rumbo1_t"; # Passwd de la BD
> my $driver="Oracle"; # Usamos el driver de oracle
> my $tabla_usuarios = "bv_user"; # Nombre de la tabla que
vamos
> a consultar
> my $sql_consulta = "select user_alias from bv_user"; # Creamos la
sentencia
> SQL
>
> # Escribimos la cabecera de la pagina HTML
> escribe_inicio_html();
>
> # Conectamos con la BD
> my $dbh = DBI->connect("dbi:$driver:$base_datos",$usuario,$clave) || die
> "\nError al abrir la base de datos: $DBI::errstr\n";
>
> #Realizamos la etapa de preparaci�n de la sentencia
> my $sth = $dbh->prepare($sql_consulta);
>
> #Realizamos la etapa de ejecuci�n de la sentencia
> $sth->execute();
>
> # Mostramos los usuarios via Web
> while ( $users=$sth->fetchrow_array())
> {
> muestra_usuario($entorno);
> }
>
> #Liberacion de recursos ocpupados por la sentencia
> $sth->finish();
>
> #Desconexion de la BD, mostramos mensaje si algo falla
> $dbh->disconnect || warn "\nError al desconectar.\nError: $DBI::errstr\n";
>
> escribe_final_html();
>
> exit;
>
>
> ----------
> Antonio Hern�ndez
> Development Executive, IT Systems
> RUMBO
> C/Procion, 1-3 - 28023 - Madrid - Spain
> Tlf.: (34)913.076.689 (EXT. 31038)
> Fax: (34)913.728.550
> [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
> http://www.rumbo.es <http://www.rumbo.es>
>
>
>
>
> -----Mensaje original-----
> De: Michael A. Chase [mailto:[EMAIL PROTECTED]]
> Enviado el: Monday, April 30, 2001 1:31 PM
> Para: Antonio Hern�ndez
> CC: [EMAIL PROTECTED]
> Asunto: Re: DBD-Oracle
>
>
> You would be far better off getting it added to the webserver
configuration.
> That way when a new version of Oracle is installed ORACLE_HOME only has to
> change in one place.
>
> To see how to change an environment variable in a script, run 'perldeoc
> perlvar' and search for %ENV.
> ----- Original Message -----
> From: "Antonio Hern�ndez" <[EMAIL PROTECTED]>
> To: "'Sikkandar Dulkarnai'" <[EMAIL PROTECTED]>
> Cc: <[EMAIL PROTECTED]>
> Sent: Monday, April 30, 2001 4:25 AM
> Subject: RE: DBD-Oracle
>
> How can I define the ORACLE_HOME in the script?
>
> -----Mensaje original-----
> De: Sikkandar Dulkarnai [mailto:[EMAIL PROTECTED]]
> Enviado el: Monday, April 30, 2001 12:38 PM
> Para: Antonio Hern�ndez; [EMAIL PROTECTED]
> Asunto: RE: DBD-Oracle
>
> Define the ORACLE_HOME either in your Web server or in your script. I had
> the same problem and it was OK when I define the ORACLE_HOME in httpd.conf
> (Apache) ...