Psycopg2でサーバーに接続できない

Psycopg2を使っていて、multiprocessingでデータベースに接続してデータを入れる処理を書こうとしていたんだが、↓のエラーで躓いた。

 could not connect to server: Connection refused
        Is the server running on host "localhost" and accepting
        TCP/IP connections on port 5432?
netstat -an| grep 5432

で確認しても

tcp    0    0 127.0.0.1:5432    0.0.0.0:*    LISTEN

とあって、動いてるように見える。
postgresql.confの設定も

listen_address = 'localhost'
port = 5432

となっていることを確認した。
それでも繋がらない。


結論を言うと、

con = psycopg2.connect(database=db, user=user, password=passwd)

のように書く必要がある。修正前は

con = psycopg2.connect(database=db, host='localhost', user=user, password=passwd)

としていた。
hostを設定していたとき、ログやpsなどで見ていると5432以外のportでのアクセスがあった。きっとこれがダメなんだろうとあたりをつけて何とかTCP/IPではなくUnixドメインでアクセスできないかと探していると、psycopg2では、hostの設定を省くとUnixドメインでのアクセスになるというので試してみたらうまくつながった。