Django の syncdb 操作を実行しようとすると、次のエラーが発生します。
psycopg2.OperationalError: could not connect to server: Permission denied
Is the server running locally and accepting
connections on Unix domain socket "/var/pgsql_socket/.s.PGSQL.5432"?
この質問への回答を読み、次のことを試しました。
- /Library/PostgreSQL/9.1/data/potsgresql.conf で「listen_address」を「localhost」または「*」に変更します
- 私のsettings.pyファイルで「ホスト」を「localhost」に変更します(Djangoの場合)
- ユーザーはsettings.pyで正しいパスワードを使用して「postgres」に設定されています
(各ステップの後、postgresql サーバーを再起動しました。)
また、pg_hba.conf ファイルをチェックして、Unix ドメイン ソケットがすべてのユーザーからの接続を受け入れているかどうかを確認しました (このページに基づく)。ここに私が持っているものがあります:
# "local" is for Unix domain socket connections only
local all all md5
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
以前はこの問題はありませんでした。最近Lionにアップグレードし、最小限のモジュールがインストールされた新しいvirtualenvに取り組んでいます。