database.yml のポートを変更します
ご存知のように、PostgreSQL は 2 種類の接続をサポートしています: tcp/ip と unix ドメイン ソケットです。どちらもホストとポートを使用できますが、使用方法が異なります。
TCP/IP を使用する場合、ホストとポートは、TCP/IP を実行しているネットワークに関して標準的な意味を持ちます。
Unix ドメイン ソケットを使用する場合、host はディレクトリを提供し、port はソケット名の数値部分を提供します。パスは絶対パスにする必要があります。同じことが libpq ベースの接続 (pg gem を介したものを含む) にも当てはまるはずなので、次のことを考慮してください。
psql -h /tmp -p 5000
これにより、次のエラー メッセージが表示されます。
$ psql -h /tmp -p 5000
psql: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/tmp/.s.PGSQL.5000"?
同様に:
$ psql -h /foo -p 50000
psql: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/foo/.s.PGSQL.50000"?