I am having a problem using DBD-Oracle.

Basic problem - I can only get a connect to work when I fully
specify the connect string, i.e.

"dbi:oracle:host=xxx;port=yyy;sid='zzz' ....

Environment:

Remote connection

Server side - Solaris 9, Oracle 9.2.0.4.0

Client side - Solaris 10 i86pc, Oracle Client 10.2.0.1.0
Perl 5.8.4 (as came installed with Solaris)
DBI 1.58
DBD-Oracle 1.19

SQLPlus works. With no TWO_TASK, and TNS_ADMIN set,

sqlplus x/[EMAIL PROTECTED]

works, demonstrating it is finding and using tnsnames.ora.

From a simple Perl program in the same shell, any format of the connect other than
a fully specified connect string results in a ORA-12154 message.

Since SQLPlus is resolving the database name, this seems to imply
the program can not find tnsnames.ora?

Checked the environment in the shell the Perl program runs from - properly set.
Printed environment variables inside the Perl script - properly set.
tnsnames.ora permissions, and all directories, set to 777.
sqlnet.ora specifies TNSNAMES as a connect method.

Turned on DBI trace to level 15. Only interesting message is:

OCIServerAttach (some#, some#, "dbname", 5, 0)
and then ORA-12154 follows.

Any ideas?

Darrell Oresky
[EMAIL PROTECTED]


Reply via email to