好吧,我的mac上有Postgres.app。
据我所知,它在当地运行。(顶部栏中的小象图标)
创建了一个非常基本的rails应用程序,它运行良好,即显示在浏览器中。
尝试
将其连接到Navicat Litehttp://www.navicat.com/.它不断出现这个错误:FATAL: role "postgres" does not exist.
我不太清楚如何解决这个问题,所以我碰巧遇到了感应http://inductionapp.com/并试图使用它再次连接到Postgres,这就是它出现的错误:
Connection Error
could not connect to server: Permission denied
Is the server running locally and accepting connections on Unix domain socket "/var/pgsql_socket/.s.PGSQL.5432"?
不太确定如何解决这个问题。
我在谷歌上搜索了一下,有些修复程序似乎有点复杂,现在,我不想做我不太理解也不想回滚的修复程序。
暂停?
编辑(包括我的bash信息)
export PGHOST=localhost
PATH="/Applications/Postgres.app/Contents/MacOS/bin:$PATH"
export PATH=/usr/local/bin:$PATH
PATH=$PATH:$HOME/.rvm/bin # Add RVM to PATH for scripting
### Added by the Heroku Toolbelt
export PATH="/usr/local/heroku/bin:$PATH"
编辑两个
好吧,不确定这是怎么发生的。
再次随机运行Navicat(有点像转轮上的鼠标?),并更改了"连接属性"页面上输入的一些数据,即用户名和密码-将其设置为我笔记本电脑的信息。
它奏效了。
那么,是吗?
但当我尝试使用归纳法时,却出现了与本文所列相同的错误。
所以,不确定发生了什么,为什么它只适用于Navicat而不适用于Induction?
编辑三
嗯。。。好吧,只是再次尝试了Induction,这次实际上键入了localhost,而不是将其保留为默认值127.0.0.0……它成功了!
嗯,这是个好消息吗?
此外,"which-psql"的结果是:/usr/bin/psql
,考虑到我在bash配置文件中所做的内容,这对我来说似乎不正确。
嗯,不是想延长这个帖子,也不是想添加可以保存到另一个帖子的问题。我想从技术上讲,既然我已经让Navicat和Induction都工作了,这个帖子现在就无效了?
我应该把我关于psql路径的问题放在另一篇文章上吗?
请告诉我。
谢谢。
已删除echo$PATH的结果。
与postgresapp相比,您的rails应用程序似乎正在尝试连接到OSX附带的标准postgres安装。
作为postgresapp设置的一部分,你是否遵循了这些步骤(http://postgresapp.com/documentation)?
PostgreSQL附带了一组有用的二进制文件,如pg_dump或pg_restore,您可能会想要使用它们。继续,将Postgres.app附带的/bin目录添加到您的PATH中(最好在.profile、.bashrc、.zshrc等中,以确保为每个终端会话设置该目录):
PATH="/Applications/Postgres.app/Contents/MacOS/bin:$PATH";
一旦正确设置了路径,就应该能够在没有主机的情况下运行psql。(如果没有,请通过执行哪个psql检查PATH中是否加载了正确的版本)
此外,请重新安装您的pg gem。