I have problems using DBI:Proxy / DBI:Proxyserver with an Oracle
database. In fact, I am not sure that I start the proxy properly.

I'd like to connect to a remote Oracle database (called 'abc') running
on machine A (ip=1.2.3.4), port 1521.

First, on A, I created a proxy startup file:
-------------------------
$ cat ./testProxy0.pl
#!/usr/bin/perl --  # -*-Perl-*-
use DBI::ProxyServer;
use strict;
use diagnostics;
DBI::ProxyServer::main(@ARGV);
-------------------------

Then I run it, and... get an error:
-------------------------
$ ./testProxy0.pl -localaddr 1.2.3.4 --localport 1521
running...
Uncaught exception from user code:
        Cannot create socket: Address already in use at 
/usr/lib/perl5/vendor_perl/5.8.0/Net/Daemon.pm line 548. at 
/usr/lib/perl5/vendor_perl/5.8.0/Net/Daemon/Log.pm line 136.
        Net::Daemon::Log::Fatal('DBI::ProxyServer=HASH(0x8275980)','Cannot 
create socket: Address already in use') called at 
/usr/lib/perl5/vendor_perl/5.8.0/Net/Daemon.pm line 548
        Net::Daemon::Bind('DBI::ProxyServer=HASH(0x8275980)') called at 
/usr/lib/perl5/vendor_perl/5.8.0/i386-linux-thread-multi/DBI/ProxyServer.pm 
line 234
        DBI::ProxyServer::main('-localaddr',1.2.3.4,'--localport',1521) called 
at ./testProxy0.pl line 5
-------------------------

Now, changing the port to a free value (1521 is used by Oracle) gets
rid of the error. Is this the way to go? Is this 'free' port the value
that the DBI:Proxy should send a request to? But then, I don't
understand how to tell the proxy what port is the database running at.

Can you help? Thanks for your time.
-- 
        Claude

Reply via email to