我刚在Mac上安装了Postgres.app,但无法正常使用。我完成了安装,应用程序图标在菜单栏上,它说它正在侦听端口5432,但是,如果我尝试从命令行运行它会发生这种情况:
~ $ psql
zsh: correct 'psql' to 'sl' [nyae]? n
zsh: command not found: psql
我之前通过Homebrew安装了PostgreSQL,但在安装Postgres.app之前删除了它。我正在运行Mac OS X Lion。
我感谢任何帮助,我真的希望在我的机器上运行PostgreSQL。
答案 0 :(得分:45)
Postgres.app的psql
二进制文件位于应用程序包中,您必须将相应的目录添加到PATH
。来自fine manual:
配置
$PATH
Postgres.app包含许多命令行工具。如果要使用它们,则必须配置
$PATH
变量。如果您使用 bash (OS X上的默认shell),请将以下行添加到
~/.bash_profile
:export PATH=$PATH:/Applications/Postgres.app/Contents/Versions/latest/bin
[...]
因此,请调整zsh配置文件中的PATH
设置以包含
Contents/Versions/latest/bin
您的Postgres.app
捆绑包中的目录。
答案 1 :(得分:24)
我在2014年4月阅读此内容,就我的Postgres应用而言,您必须在路径中包含的目录略有不同。
我必须包括这个:
PATH="/Applications/Postgres.app/Contents/Versions/9.3/bin:$PATH"
我现在可以在终端中运行psql。
答案 2 :(得分:5)
你应该使用/ latest而不是版本,所以你不需要在更新Postgres时再次更改它。
如何:http://postgresapp.com/documentation/cli-tools.html
然后运行:
. ~/.bash_profile
重新加载.bash_profile并更新您添加的任何功能。
答案 3 :(得分:1)
这可能看起来很愚蠢,但我很好奇你安装Postgres.app的地方?正如mu is too short
的答案中所建议的那样,文档提到了在您的路径中添加/Applications/Postgres.app/Contents/MacOS/bin
。但是,这需要您在/Applications/
文件夹中安装Postgres.app。
在尝试使用Stack Overflow上的任何更复杂的解决方案之前,以及通过Google发现的其他资源之前,您应确保已将Postgres.app安装到正确的位置。可能就像将Postgres.app移动到/Applications/
一样简单,因为在psql
之前/Applications/Postgres.app
会找到export PATH="~/Postgres.app/Contents/MacOS/bin:$PATH"
。
或者,你可以使用你想要的Postgres.app路径。因此,如果您希望它位于您的主目录中,那么您可以使用{{1}}。
HTH
答案 4 :(得分:1)
在zsh shell上,您进行了.zshrc
的修改:
PSQL_PATH="/Applications/Postgres.app/Contents/Versions/latest/bin"
PATH="$PATH:$PSQL_PATH"
提示时:
exec $SHELL
which psql
答案 5 :(得分:0)
我是以前的Ubuntu用户,现在在OSX中尝试运行" sql"和" pg_restore"直接来自我打开的终端的命令没有用。我点击了大象图标并通过"打开psql"打开了一个终端。一旦我从psql控制台退出并在该终端中编写了命令,它们都能正常工作。
答案 6 :(得分:0)
在ZSH终端上,尝试上述解决方案之前,必须首先安装Postgres。使用Hombrew
时
首先,点击
brew install postgres
然后检查它是否由which psql
安装了