Ответ 1
Мне нужно было удалить существующего пользователя postgres перед выполнением установки.
Я выполнил инструкции по настройке postgresql из этот сайт
Кажется, все идет хорошо, пока я не попытаюсь:
createuser --superuser myname -U Postgres
Я получаю следующее исключение:
createuser: не удалось подключиться к посты в базе данных: не удалось подключиться на сервер: нет такого файла или каталога Сервер работает локально и прием соединений в домене Unix socket "/tmp/.s.PGSQL.5432"?
В жизни я не могу понять, как это решить. Любые идеи???
Мне нужно было удалить существующего пользователя postgres перед выполнением установки.
Возможно, вы переместили свой каталог данных postgres после установили postgres, используя macports
Найдите, где находится ваш startctl startup script.
ps -ef | grep postgres
Выходы
0 54 1 0 0: 00.01?? 0: 00.01/opt/local/bin/daemondo --label = postgresql84-server --start-cmd/opt/local/etc/LaunchDaemons/org.macports.postgresql84-server/postgresql84-server.wrapper start; --stop-cmd/opt/local/etc/LaunchDaemons/org.macports.postgresql84-server/postgresql84-server.wrapper stop; --restart-cmd/opt/local/etc/LaunchDaemons/org.macports.postgresql84-server/postgresql84-server.wrapper restart; --pid = нет
Итак, я редактирую
sudo vim /opt/local/etc/LaunchDaemons/org.macports.postgresql84-server/postgresql84-server.wrapper
И найдите строку
Start() {
su postgres -c "${PGCTL} -D ${POSTGRESQL84DATA:=/opt/local/var/db/postgresql84/wrong_place} start -l /opt/local/var/log/postgresql84/postgres.log"
}
Ahh.. мой каталог данных находится не в том месте. Я исправлю это, изменив
/Opt/локальные/вар/дб/postgresql84/wrong_place
к
/Opt/локальные/вар/дб/postgresql84/right_place
для команды запуска и останова.
Вы установили порт postgresql84-server
? Если это так, вы запустили сервер:
$ sudo port load postgresql84-server
Если вы оба сделали это, я заметил, что иногда обработчик демона MacPorts (daemondo
) не запускает обработку запросов для PostgreSQL до перезагрузки компьютера. (Это происходит только при первом запуске, последующие попытки должны работать нормально.)