Установлен Postgres.app, но он не будет работать
Я только что установил Postgres.app на своем Mac, но он не будет работать должным образом. Я закончил установку, и значок приложения находится в строке меню, и он говорит, что он прослушивает порт 5432, однако это то, что произойдет, если я попытаюсь запустить его из командной строки:
~ $ psql
zsh: correct 'psql' to 'sl' [nyae]? n
zsh: command not found: psql
Я ранее устанавливал PostgreSQL через Homebrew, но удалял его перед установкой Postgres.app. Я запускаю Mac OS X Lion.
Я ценю любую помощь, я действительно хочу, чтобы PostgreSQL работал на моей машине.
Ответы
Ответ 1
Двоичный файл psql
для Postgres.app находится внутри пакета приложений, и вам нужно будет добавить соответствующий каталог в PATH
. Из точное руководство:
Настройте $PATH
Postgres.app включает в себя множество инструментов командной строки. Если вы хотите их использовать, вы должны настроить переменную $PATH
.
Если вы используете bash (оболочка по умолчанию для ОС X), добавьте следующую строку в ~/.bash_profile
:
export PATH=$PATH:/Applications/Postgres.app/Contents/Versions/latest/bin
[...]
Итак, настройте свой параметр PATH
в конфигурационных файлах zsh, чтобы включить
Contents/Versions/latest/bin
внутри вашего пакета Postgres.app
.
Ответ 2
Я читаю это по состоянию на апрель 2014 года и каталог, который вы должны указать на своем пути, насколько мое приложение Postgres немного отличается.
Мне пришлось включить это:
PATH="/Applications/Postgres.app/Contents/Versions/9.3/bin:$PATH"
Теперь я могу запустить psql в моем терминале.
Ответ 3
Что вы должны сделать, это использовать /latest вместо версии, поэтому вам не нужно менять его снова при обновлении Postgres.
Как: http://postgresapp.com/documentation/cli-tools.html
затем запустите:
. ~/.bash_profile
перезагрузить .bash_profile и обновить любые функции, которые вы добавляете.
Ответ 4
Это может показаться глупым, но мне любопытно, где вы установили Postgres.app? Как было предложено в ответе mu is too short
, в документации упоминается добавление /Applications/Postgres.app/Contents/MacOS/bin
к вашему пути. Однако для этого требуется, чтобы вы установили Postgres.app в свою папку /Applications/
.
Перед тем, как попробовать какие-либо более сложные решения, которые вы могли бы найти в Stack Overflow, и другие ресурсы через Google, вы должны убедиться, что вы установили Postgres.app в нужное место. Это может быть так же просто, как перенос Postgres.app в /Applications/
, поскольку psql
будет найден в /Applications/Postgres.app
до любых других мест.
В качестве альтернативы вы можете использовать любой путь к Postgres.app, который вам нужен. Поэтому, если вы хотите его в своем домашнем каталоге, вы можете использовать export PATH="~/Postgres.app/Contents/MacOS/bin:$PATH"
.
НТН
Ответ 5
Я бывший пользователь Ubuntu, теперь в OSX. Попытка запуска команд "which sql" и "pg_restore" непосредственно с терминала, который я открыла, не работает. Я нажал на значок слона и открыл терминал "Open psql". Как только я ушел из консоли psql и написал команды в этом терминале, все они работали.
Ответ 6
В оболочке zsh у вас есть изменение .zshrc
:
PSQL_PATH="/Applications/Postgres.app/Contents/Versions/latest/bin"
PATH="$PATH:$PSQL_PATH"
По подсказке:
exec $SHELL
which psql