DB Postgres не начинается с Mac OSX: ERROR говорит: подключения к сокету Unix
Я установил Postgresql, а затем запустил множество приложений rails на моем локальном Mac OSX Mountain Lion и создал базы данных и т.д. Сегодня через некоторое время, когда я запустил pgAdminIII и попытался запустить сервер базы данных, я получил эту ошибку:
![enter image description here]()
Быстрый google показал этот пост. Больше просмотров указывает на то, что вокруг может быть какой-то файл postmaster.pid, который может быть основной причиной этого. Если я удалю, все будет хорошо.
Однако, прежде чем я удалю вещи на своем компьютере, я хотел убедиться, что Im отлаживает это систематически, что не приведет к большим проблемам.
Где-то я прочитал, что перед удалением этого файла мне нужно запустить эту команду:
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 все еще не работает, по-прежнему получает ту же ошибку и ничего не изменилось. Я тоже курица, чтобы удалить вещи, не проверяя SO.
Могли бы некоторые из вас экспертов посоветовать noob.
Спасибо
Ответы
Ответ 1
У меня сейчас работает база данных.
Вот шаги, которые я сделал:
- Я перезагрузил свой компьютер.
- Я открыл терминал и запустил
cd /
- Тогда я сделал
ls -la
- Убедитесь, что я могу добраться до
MackintoshHD/usr/local/var/postgres
- Затем сделал
ls -la
- Здесь я увидел файл postmaster.pid
- Я выполнил эту команду
cp postmaster.pid ~/Desktop
, которая скопировала
файл на мой рабочий стол. Мне нравится делать это, если я удаляю файлы. Если
что-то не так, я могу вернуть его.
- Затем я выполнил эту команду, чтобы удалить файл из postgres
каталог
rm -r postmaster.pid
- Я пошел в свой pgadmin3 gui и выстрелил в него. и Voila это сработало:)
Спасибо @Craig Ringer за помощь
Ответ 2
У меня была такая же проблема сегодня на Mac Sierra. В Mac Sierra вы можете найти postmaster.pid
внутри /Users/<user_name>/Library/Application Support/Postgres/var-9.6
. Удалите postmaster.pid
, и проблема будет исправлена.
Ответ 3
Это может произойти, если база данных не закрылась правильно.
Чтобы исправить это, удалите файл postmaster.pid:
rm /usr/local/var/postgres/postmaster.pid
Или сделайте резервную копию:
mv /usr/local/var/postgres/postmaster.pid /usr/local/var/postgres/postmaster.pid.backup
Ответ 4
Я использую Postgres.app, и ниже работал у меня:
Я ввел команды в свой терминал ниже, предварительно установив папку 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) кажется запущенным сервером в любом случае запуск сервера LOG: система базы данных была прервана; последний известно в 2015-07-28 18:15:26 PDT LOG: система базы данных не была правильно выключить; автоматическое восстановление в процессе LOG: запись с нулевая длина при 0/4F0F7A8 LOG: повтор не требуется. LOG: database система готова к подключению LOG: запускается автовыпуклая
Источник