ruby-on-rails - Rails 中的 PostgreSQL : How do I make the server run locally AND accept connections on the Unix domain socket?

标签 ruby-on-rails postgresql heroku

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

我只是想跟随这个关于安装 Postgres 的截屏视频的前 5 分钟: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"?

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

我使用自制软件安装 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 中的 native psql 安装切换到使用自制程序安装的 psql,usr/local/bin/psql.

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

编辑 2:

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

最佳答案

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

sudo chmod -R 777 /var/pgsql_socket/

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

现在它应该可以工作了。

关于ruby-on-rails - Rails 中的 PostgreSQL : How do I make the server run locally AND accept connections on the Unix domain socket?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11443738/

相关文章:

ruby-on-rails - Rails 多级模型安全性

postgresql - 如何在不创建函数的情况下执行 pl/pgsql 代码?

arrays - Postgres : why does this GIN index not used for this "object in array" query

json - 如何将我通过 npm 安装的所有依赖项保存到我的 package.json 文件中?

ruby-on-rails - 如何调用模块中的类特定方法

ruby-on-rails - rspec 示例后解冻时间

ruby-on-rails - 在 Rails 中的一行 Ruby 'if else' 语句中添加类或 ID?

postgresql - 填充表时出现多行错误

ruby-on-rails - 使用 Cygwin 挂起的 Heroku 工具带登录

heroku - 使用 Heroku 主机重定向 HTTP 或 Frame 的 1and1 域名?