Разрешение Postgres отклонено на MAC OS X

Я следил за рубиновым руководством по рельсам, чтобы работать с postgres, но когда я пытаюсь использовать "rake db: create", я получаю следующую ошибку:

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"?

Я нашел этот вопрос, выпустив некоторую аналогичную проблему, но я не мог заставить его работать в любом случае.

Восстановление Postgresql после обновления до OSX 10.7 Lion

Я установил homebrew после прочтения этого вопроса, и путь в порядке, brew врач не показывает мне ошибок на пути.

Ответ 1

Вместо устранения неполадок в разрешениях файлов сокетов вы можете попробовать TCP-соединение. Добавьте host: localhost к вашему config/database.yml. Конечно, это будет работать, только если postgres прослушивает TCP-трафик. Postgres по умолчанию прослушивает порт 5432, поэтому netstat -an | grep 5432 сообщит вам, если он прослушивает.

Ссылки

Ответ 2

О, может быть, вы открыли postgre в другом приложении, например pgadmin http://www.pgadmin.org/ Попробуйте закрыть любое приложение, использующее postgre SQL, и снова запустите команду.

Ответ 3

Сегодня я столкнулся с той же проблемой и нашел это сообщение в блоге ниже, которое помогло мне:

http://nextmarvel.net/blog/2011/09/brew-install-postgresql-on-os-x-lion/

Он перемещает двоичные файлы postgres по умолчанию для OS X в папку архива и вместо них ссылается на версии homebrew.

TL; DR curl http://nextmarvel.net/blog/downloads/fixBrewLionPostgres.sh | sh

Ответ 4

У меня была такая же проблема. После безуспешного тестирования всех вышеперечисленных предложений я, наконец, вышел из терминала и перезапустил его.

Это сработало.

Ответ 5

Просто проверьте, имеет ли ваш config/database.yml ------ хост: localhost и порт: (проверьте сами netstat -an | grep 5432 или 5433)

Ответ 6

Я также столкнулся с этой проблемой, потому что в моем Gemfile был активен как mysql, так и pg gems.

Я прокомментировал gem mysql:

# mysql 

Затем выполнил:

bundle install 

а затем:

rake db:migrate 

и он работал как шарм.