PostgreSQL не удалось создать Mavericks сокетов TCP/IP

Я устанавливаю через brew.

сообщение об ошибке(ы):

когда я называю

postgres

я получаю сообщение об ошибке

LOG:  could not bind IPv6 socket: Address already in use
HINT:  Is another postmaster already running on port 5432? If not, wait a few seconds and retry.
LOG:  could not bind IPv4 socket: Address already in use
HINT:  Is another postmaster already running on port 5432? If not, wait a few seconds and  retry.
LOG:  could not bind IPv6 socket: Address already in use
HINT:  Is another postmaster already running on port 5432? If not, wait a few seconds and retry.
WARNING:  could not create listen socket for "localhost"
FATAL:  could not create any TCP/IP sockets

под управлением

postgres -D /usr/local/var/postgres

создает ту же ошибку

createdb

дважды запрашивает мой пароль, а затем говорит:

createdb: could not connect to database template1: FATAL:  password authentication failed for user "thomasmurphy"

что я пробовал * Удаление и переустановка PG gem, удаление и переустановка postgres * Обновление инструментов командной строки * Satisying все самогонки потребности врача * файл pg_hba редактирования.разрешения конф по * редактирование. файл, чтобы быть уверенным, что оно включает в себя вышеупомянутые каталоги

у меня Postgres отлично работает на моем рабочем компьютере, также на Mavericks, поэтому это кажется мне несколько крайним случаем. Какие еще векторы я могу ткнуть, чтобы попытаться решить эту проблему?

4 ответов


ошибки, которые вы получаете, потому что PostgreSQL работает. Откуда мне знать? Потому что он отклоняет ваш пароль. Это совершенно ясно.

теперь ваша реальная проблема, вероятно, заключается в том, что вам нужно перезапустить PostgreSQL после изменения pg_hba.conf, чтобы дать вам доступ доверия. Тогда вы можете:

 ALTER USER foo WITH PASSWORD 'bar';

что касается запуска и перезапуска PostgreSQL, см. Этот вопрос:как запустить сервер PostgreSQL на Mac OS X?


ошибка, которую вы получили, потому что ваш хост сломан. Проверьте свой .

поставить 127.0.0.1 localhost в первой строке хостов.


Linux: убедитесь, что ваш интерфейс loopback запущен, запустив ifconfig в командной строке. Если это не вверх, вы можете использовать /sbin/ifconfig lo 127.0.0.1 чтобы поднять его.


это не может быть, что ваш /etc/hosts сломан. Это может быть что-то еще, нарушающее поиск DNS localhost, даже если правильная линия в /etc/hosts.

Регистрация nslookup localhost и посмотреть, если вы получите 127.0.0.1 как результат. Также проверьте с getent hosts localhost. Проверьте эти также как пользователь Postgres работает как.