【问题标题】:PostqreSQL in Rails: How do I make the server run locally AND accept connections on the Unix domain socket?Rails 中的 PostgreSQL:如何使服务器在本地运行并接受 Unix 域套接字上的连接?
【发布时间】:2012-07-12 01:04:33
【问题描述】:

所以我是 Rails 的新手,之前只使用过 SQLite3,而在使用 PostgreSQL 时,我什至无法运行一个简单的 rake 命令。

我只是想按照这个截屏视频的前 5 分钟来安装 Postgres:http://railscasts.com/episodes/342-migrating-to-postgresql

但即使我按照指示完成了所有操作,当我运行 rake db:create:all 时,我也会收到无处不在的错误消息:

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"?

我到处都可以看到这个问题,但是有人可以一劳永逸地回答这个问题吗(如果这样的任务如此简单的话)?

我使用 homebrew 安装 PostgreSQL。

当我运行 which psql 时,它说我正在使用 usr/bin/psql 中的那个,我相信它是 Mac OSX Lion 原生的那个(这不是一件坏事吗?我该如何切换到自制软件安装的,在usr/local/bin/psql?)。

我相当肯定 Postgres 至少在运行:当我运行 ps auxw | grep postgres 时,我得到了我的四个进程,例如:

postgres: stats collector process
postgres: autovacuum launcher process
postgres: wal writer process
postgres: writer process

我什至可以很好地安装我的pg gem。我整天都在试图让 Postgres 运行,感谢任何帮助!

编辑(有解决方案):

参考此链接:

Repairing Postgresql after upgrading to OSX 10.7 Lion

确实存在路径问题。所以我按照指示编辑了我的 .bash_profile,并从使用我在 usr/bin/psql 中的本地 psql 安装切换到由 homebrew 安装的那个,usr/local/bin/psql

然后,我卸载了我的 pg gem,然后重新安装了它,然后 rake dr:create:all 开始工作。 :)

编辑 2:

实际上,我仍然有很多问题!这太令人沮丧了! :)

【问题讨论】:

  • cd 进入 /var/pgsql_socket/ 然后输入 ls -l。它说什么?
  • 它说权限被拒绝,如果我做对了

标签: ruby-on-rails postgresql heroku


【解决方案1】:

您的权限可能搞砸了。试试

sudo chmod -R 777 /var/pgsql_socket/

这为每个人提供开放权限,因此可以满足您的开发服务器需求。

现在应该可以了。

【讨论】:

    猜你喜欢
    • 2017-08-02
    • 2015-08-13
    • 1970-01-01
    • 2015-05-09
    • 2019-01-24
    • 2020-11-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多