http://www.perlmonks.org?node_id=404666


in reply to oracle DB connection from within a cgi-page

Also, make sure that the database name can be found in your $ORACLE_HOME/network/admin/tnsnames.ora file (unless you're using some other kind of name resolution mechanism, like oranames server... which I doubt). By this I mean: your database connect probably looks something like:
my $dbh = DBI->connect("dbi:Oracle:FOO", ...);
In which case "dbi:Oracle:FOO" is called your "connect descriptor", and "FOO" is the database name (in oracle-speak, this is a "TNS name"). Anyway, you should be able to find the information needed to connect to your oracle database listed under FOO (or equivalent) in your $ORACLE_HOME/network/admin/tnsnames.ora file.

Oh, and by the way: it's not a firewall issue. The error for that would be either hanging indefinitely on connect attempt or an error to the affect that the connection was refused. You are getting "could not resolve service name", which specifically means that the oracle client cannot figure out who you are trying to talk to (i.e. can't turn a TNS name into a: host, SID, and listener-port).

Good luck.

------------ :Wq Not an editor command: Wq