Postgres DB не запускается на Mac OSX: ошибка говорит: соединения в сокете домена Unix [закрыто]
Я установил Postgresql, а затем запустил кучу приложений rails на моем локальном Mac OSX Mountain Lion и создал базы данных и т. д. Сегодня через некоторое время, когда я запустил pgAdminIII и попытался запустить сервер базы данных, я получил эту ошибку:
быстрый google показал этой пост. Больше просмотров указывало на то, что там может быть какой-то почтмейстер.PID-файл, лежащий вокруг, может быть основной причиной этого. Если я удалю, что вещи будут быть хорошо.
однако, прежде чем я удалю материал на своем компьютере, я хотел убедиться, что я отлаживаю это систематически, что не приведет к большим проблемам.
где-то я читал, что перед удалением этого файла мне нужно запустить эту команду:
ps auxw | grep post
Если я не получу никаких результатов, то его ОК, чтобы удалить файл. Еще нет. Ну, я получил этот результат от этой команды:
AM 476 0.0 0.0 2423356 184 s000 R+ 9:28pm 0:00.00 grep post
Так что теперь, конечно, я через путаницу.
Так что должен ли я это сделать?
вот часть моего журнала ошибок сервера postgres:
FATAL: lock file "postmaster.pid" already exists
HINT: Is another postmaster (PID 171) running in data directory "/usr/local/var/postgres"?
Postgresql по-прежнему не работает, по-прежнему получает ту же ошибку, и ничего не изменилось. Im слишком курица, чтобы удалить вещи без проверки на так.
не могли бы некоторые из вас эксперты, пожалуйста, руководство noob.
спасибо
4 ответов
у меня была такая же проблема сегодня на Mac Sierra. В Mac Sierra вы можете найти postmaster.pid
внутри /Users/<user_name>/Library/Application Support/Postgres/var-9.6
. Удалить postmaster.pid
и проблема будет решена.
это часто происходит, если база данных не была закрыта должным образом.
удалить почтмейстер.пид файл:
rm /usr/local/var/postgres/postmaster.pid
или, резервное копирование:
mv /usr/local/var/postgres/postmaster.pid /usr/local/var/postgres/postmaster.pid.backup
у меня сейчас работает база данных.
вот шаги, которые я взял:
- я перезагрузил компьютер
- Я открыл терминал и побежал
cd /
- тогда я сделал
ls -la
- гарантировал, что я смогу добраться до
MackintoshHD/usr/local/var/postgres
сделал - Я выполнил эту команду
cp postmaster.pid ~/Desktop
, который скопировали файл на мой рабочий стол.Мне нравится делать это, если я удаляю файлы. Если что-то не так я могу вернуть его - затем я запустил эту команду, чтобы удалить файл из postgres
каталог
rm -r postmaster.pid
- Я пошел к моему pgadmin3 gui и запустил его. и вуаля, это сработало :)
ls -la
спасибо @Craig Ringer за его помощь
Я использую Postgres.приложение, и ниже работал для меня:
Я ввел команды в свой терминал ниже, предварительно найдя папку Postgres и не используя "justin".
$declare -x PGDATA="/Users/justin/Library/Application Support/Postgres/var-9.4"
$pg_ctl restart -m immediate
Как объясняет Джастин в своем посте, вывод после этого:
ожидание завершения работы сервера............................................................... ошибка pg_ctl: сервер не выключается
после повторного ввода команды:
$pg_ctl restart -m immediate
Он работал и я получил это сообщение:
pg_ctl: старый серверный процесс (PID: 373), похоже, ушел, начиная сервер в любом случае, журнал запуска сервера: система базы данных была прервана; последний известно на 2015-07-28 18: 15: 26 PDT LOG: система базы данных не была правильно завершите работу; автоматическое восстановление в журнале выполнения: запись с нулевая длина при 0 / 4F0F7A8 LOG: повтор не требуется LOG: database система готова принять журнал соединений: autovacuum launcher started