【问题标题】:Errors when connecting to local Postgres.app from Navicat or Induction从 Navicat 或 Induction 连接到本地 Postgres.app 时出错
【发布时间】:2014-01-09 23:46:06
【问题描述】:

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

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

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

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

不知道怎么解决,碰巧遇到了Inductionhttp://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(有点像滚轮上的鼠标?),并更改了在“连接属性”页面上输入的一些数据,即用户名和密码 - 将其设置为我笔记本电脑的信息.

成功了。

所以,是吗?

但是当我尝试使用 Induction 时,得到了与本文中列出的相同的错误。

所以,不知道发生了什么,为什么它只适用于 Navicat 而不是 Induction?

编辑三个

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

嗯,这是个好消息吗?

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

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

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

请告诉我。

谢谢。

已删除 echo $PATH 的结果。

【问题讨论】:

  • @DanielVérité,有趣的答案。不知道怎么办/Applications/Postgres.app/Contents/MacOS/bin/createuser -s postgres我只是在终端窗口中运行吗?
  • 必须使用 localhost 绝对表明路径仍然是错误的。可以echo $PATH吗?
  • @steakchaser ,已经在底部的帖子中发布了 echo $PATH 的结果。
  • 是的..它不在你的路径中。你是如何编辑.bashrc的?

标签: ruby-on-rails macos postgresql navicat postgres.app


【解决方案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。

【讨论】:

  • 已包含我的 bash 信息。
  • 另外,这里是'which psql'/usr/bin/psql的路径输出
  • 那条路径看起来不对。应该类似于/Applications/Postgres93.app/Contents/MacOS/bin/psql。你重新加载你的 shell 了吗?
  • Navicat 现在发生了一些奇怪的事情。将在几秒钟内更新我的帖子。
  • 是的,我同意路径看起来不对,但不知道还能做什么。我发布的 bash 信息是准确的,而且我确实做了源代码。
猜你喜欢
  • 2020-06-16
  • 2018-11-29
  • 2013-04-09
  • 2020-07-03
  • 1970-01-01
  • 1970-01-01
  • 2016-07-23
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多