Beefy Boxes and Bandwidth Generously Provided by pair Networks
XP is just a number

Re: Connecting DBD::Oracle without using TCP/IP

by Rhose (Priest)
on Dec 23, 2003 at 19:15 UTC ( #316687=note: print w/replies, xml ) Need Help??

in reply to Connecting DBD::Oracle without using TCP/IP

DBD::Oracle uses a TNS connect string to connect to the database. Depending on your Oracle client install the TNS names could be stored in a flat file called tnsnames.ora, on a names server, or in OID (Oracle internet directory) repository. Anyway, define a TNS name which will connect to the database in question and test the connection with SQL*Plus. Once you are able to connect with SQL*Plus, try connecting as below:

$dbh = DBI->connect('dbi:Oracle:'.$TNS, $User, $Pass) || die $!;

PLEASE take this with a grain of salt, as I only use TCP for connections to my databases. I played around with using the bequeath adaptor to connect to one of my test instances, and I added the following entry to the local tnsnames.ora file: = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = BEQ) (PROGRAM = oracle) (ARGV0 = oraclenboprd00) (ARGS = '(DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=BEQ)))') ) ) (CONNECT_DATA = (SID = nboprd00)) )

The ORACLE_SID of the database to which I was connecting is "nboprd00". To use this TNS name with the connection code above, set $TNS='beqtst';

One other CYA, I did not test this with DBD::Oracle... I only tested it with SQL*Plus (I do not have DBD::Oracle installed on this test system, and I am not about to play with my install an hour before I leave for holiday. *Grins*)

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://316687]
[jedikaiti]: Hi Monks
[zentara]: hello jedikaiti what's up?
[erix]: apod is up !
[zentara]: that would make great screen wallpaper

How do I use this? | Other CB clients
Other Users?
Others browsing the Monastery: (10)
As of 2017-08-18 15:33 GMT
Find Nodes?
    Voting Booth?
    Who is your favorite scientist and why?

    Results (303 votes). Check out past polls.