[ic] Interchange remote Postgres TCP

Stephen Peters speters at killbygayford.co.uk
Thu Jul 19 09:38:11 EDT 2007


On Thu, 2007-07-19 at 10:11 -0400, Mike Heins wrote:

> I assume you can connect to that DSN from a standard Perl DBI call:
> 
>     perl -MDBI -le "DBI->connect( \
> 	qq{dbi:mysql:dbname=test_found;host='my.postgres.server':5432} \
> 	) and print qq{OK!}"
> 
When I tried to connect with a standard Perl DBI call (after I corrected
my syntax) I can connect to the database. e.g.

perl -MDBI -le 'DBI->connect( \
	qq{dbi:Pg:dbname=standard;host=my.postgres.server;port=5432;} \
	) and print qq{OK!}'

> Why do you have single quotes in the DSN? Have you tried without them?
This was an attempt to figure out why the error was truncating the DSN
e.g.
Configuring catalog standard...Using PostgreSQL,
DSN=dbi:Pg:dbname=standard...


> Why do you call out the port when 5432 is the standard for a remote
> host?
> 
I could not see why the database access was trying to connect locally so
I tried to explicitly name the host and port.

With the following entry
in /var/lib/interchange/catalogs/standard/catalog.cfg I still cannot
connect to the database:

ifndef SQLDSN
Variable  SQLDSN
dbi:Pg:dbname=standard;host='my.postgres.server';port=5432;
Variable  SQLDB   standard
Variable  SQLUSER standard
Variable  SQLPASS lamepassword
endif

The startup error is still:
Configuring catalog standard...Using PostgreSQL,
DSN=dbi:Pg:dbname=standard...table 'tree' failed: connect failed
(create) -- could not connect to server: No such file or directory
        Is the server running locally and accepting
        connections on Unix domain socket
"/var/run/postgresql/.s.PGSQL.5432"?

Interchange is trying to connect locally. Why? The DSN works with a Perl
call outside of Interchange. Should the syntax differ in catalog.cfg? Do
I need to add database configuration entries elsewhere?

Thanks for your relies so far.

Steve



More information about the interchange-users mailing list