windows で postgres 使う場合の注意点

psqlは、-h を指定しない場合、Unix Domain Socket を使って接続しようとする。そして、windows は Unix Domain Socket をサポートしていないので、エラーになる。

C:\Documents and Settings\rhasegawa>psql -l
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.5432"?

C:\Documents and Settings\rhasegawa>

環境変数 PGHOST に"localhost"とか設定しておけば、"-h localhost"と指定したのと同じことになり、エラーにならない。


・No Pass ログイン設定

パスワードを指定せずにユーザを作ればNo Passログインできるが、一度、パスワード指定で作成してしまったユーザのパスワードをクリアすることはできないっぽい。
その場合は、[Postgres Home]/data/pg_hba.conf で当該ユーザについて METHOD を trust にすればよい。
(これは、windows 限らずかも)