fx has asked for the wisdom of the Perl Monks concerning the following question:
The DBD::Oracle documentation states that if your database resides on the same machine as your Perl code, then you can use a local IPC connector rather than TCP. My initial thought to this is that local IPC should be quicker.
The DBD::Oracle docs, however, do not cover Oracle 9i which is what I am using. The connection methods stated in the DBD::Oracle docs produce the error
DBI connect('','user',...) failed: ORA-06401: NETCMN: invalid driver designator (DBD ERROR: OCIServerAttach)
when I try running:
#!/usr/local/bin/perl BEGIN { $ENV{ORACLE_HOME} = '/app/oracle/product/9.0.1'; $ENV{TWO_TASK} = 'P:mydb'; } use DBI; $dbh = DBI->connect('dbi:Oracle:', 'user', 'pass') || die $!; $dbh->do("select 1 from dual"); $dbh->disconnect;
The DBD::Oracle docs suggest running $ORACLE_HOME/bin/adapters to make sure that the IPC adaptor is installed - mine is:
Installed Oracle Net Tranport Protocols are: IPC TCP/IP BEQueath SSL RAW
I did find a reference to a problem of this sort on Usenet but the article doesn't provide much help.
Can someone please suggest how I could connect to Oracle 9i with DBD::Oracle using something other than TCP/IP? If anyone has done this before, does a non-TCP/IP connection improve performance?
As you will be able to tell from my recent posts, I am having quite a lot of difficulty getting Oracle 9i to play nicely with Perl under my circumstances :)
Many thanks,
==fx, Infinity Is Colourless
Replies are listed 'Best First'. | |
---|---|
Re: Connecting DBD::Oracle without using TCP/IP
by dragonchild (Archbishop) on Dec 23, 2003 at 18:16 UTC | |
by fx (Pilgrim) on Dec 23, 2003 at 23:38 UTC | |
Re: Connecting DBD::Oracle without using TCP/IP
by Rhose (Priest) on Dec 23, 2003 at 19:15 UTC | |
Re: Connecting DBD::Oracle without using TCP/IP
by fx (Pilgrim) on Dec 28, 2003 at 20:24 UTC | |
Re: Connecting DBD::Oracle without using TCP/IP
by Nenad Noveljic (Initiate) on Oct 30, 2015 at 21:04 UTC |