While I don't have a solution for you, I'd recommend using DBI.
Wright, Ryan P wrote:
>Hello,
>
>I am having a heck of a time connecting to my postgres server, and was
>hoping some kind soul would advise me on how to proceed.
>
>The problem: Perl script dies with no error message.
>
>Code snippet:
>
>$conn = Pg::connectdb("dbname=testdb host=localhost port=5432 user=postgres
>password=test");
>print "status = ",$conn->status, "\n";
>die $conn->errorMessage unless PGRES_CONNECTION_OK eq $conn->status;
>
>Code output:
>
>status = 0
>Died at ./testscript.pl line 105.
>
>Other relevant information:
>
>- If I specify an incorrect database or username, I get appropriate error
>messages from postgres.
>- It doesn't matter whether I specify a correct or incorrect password; I get
>the same empty error.
>- "psql -U postgres -W testdb" works just fine. psql actually works perfect
>in every respect. I can connect, grab records, and do everything I should be
>able to do.
>- Postgres has been started correctly and netstat shows it listening on tcp
>port 5432. I accomplished this by changing tcpip_socket = true in
>postgresql.conf.
>- The machine running the script is the same machine running postgres.
>- pg_hba.conf is configured as follows:
>local all trust
>host all 127.0.0.1 255.255.255.255 trust
>host all 192.168.1.12 255.255.255.255 trust
>
>I added the server's remote IP in testing to see if it made a difference. It
>did not.
>
>Installation notes:
>
>- System is a Red Hat 7.2 box.
>- Postgres v7.2.3 was installed from RPMs yesterday. No prior version of
>Postgres has ever been installed on this server.
>- Perl version 5.6.0.
>- The Postgres Perl extensions were also installed from RPMs. They installed
>into /usr/lib/perl5/site_perl/5.6.1/i386_linux. They didn't work from there,
>so I moved the files Pg.pm, Pg.so, and autosplit.ix to /usr/lib/perl5/5.6.0
>where my cgi-bin.pl resided.
>
>Any advice would be greatly appreciated!
>
>Thank you!
>
>-Ryan
>
>---------------------------(end of broadcast)---------------------------
>TIP 4: Don't 'kill -9' the postmaster
>
>