0

好的,所以我的 Mac 上有 Postgres.app。

据我所知,它在本地运行。(顶部栏中的小象图标)

创建了一个非常基本的 rails 应用程序,它运行良好,即它显示在浏览器中。

尝试将其连接到 Navicat Lite http://www.navicat.com/。它不断出现此错误:FATAL: role "postgres" does not exist.

不太清楚如何解决这个问题,所以我碰巧遇到了 Induction 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?

编辑三

嗯...好的,刚刚再次尝试了归纳,这次实际上输入了 localhost 而不是将其保留为默认值 127.0.0.0 ...并且成功了!

嗯,这是好消息吗?

此外,'which psql' 的结果是这样的:/usr/bin/psql考虑到我在 bash 配置文件中输入的内容,这对我来说似乎不正确。

嗯,不是试图延长这篇文章,也不是添加可以保存到另一篇文章的问题。我想从技术上讲,因为我已经让 Navicat 和 Induction 工作了,所以这篇文章现在无效了?

我应该把我关于 psql 路径的问题写另一个帖子吗?

请告诉我。

谢谢你。

已删除 echo $PATH 的结果。

4

1 回答 1

1

似乎您的 rails 应用程序正在尝试连接到 OSX 随附的标准 postgres 安装与 postgresapp。

您是否按照这些步骤作为 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。(如果没有,请通过执行 which psql 检查是否在 PATH 中加载了正确的版本)

另外,重新安装您的 pg gem。

于 2014-01-10T00:12:04.310 回答