2

所以我是 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"?

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

我使用自制软件安装 PostgreSQL。

当我运行时which psql,它说我正在使用 in 中usr/bin/psql的那个,我相信它是 Mac OSX Lion 原生的那个(这不是一件坏事吗?我如何切换到由 homebrew 安装的那个,它位于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 运行,我感谢任何和所有的帮助!

编辑(有解决方案):

参考这个链接:

升级到 OSX 10.7 Lion 后修复 Postgresql

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

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

编辑2:

其实我还是有很多问题!这太令人沮丧了!:)

4

1 回答 1

1

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

sudo chmod -R 777 /var/pgsql_socket/

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

现在它应该可以工作了。

于 2012-07-12T03:30:42.850 回答