0

我正在尝试在我的 Macbook 上加载 Rails 3.2 项目,但遇到了困难。我通过brew. 放在/usr/local/bin前面之后$PATH,我现在可以从命令行通过psql.

但是,在我的 Rails 项目中,当我运行时:

rake db:create:all

我收到以下错误:

could not connect to server: No such file or directory
        Is the server running locally and accepting
        connections on Unix domain socket "/var/pgsql_socket/.S.PGSQL.5432"?

那么该文件确实不存在。但是我可以通过命令行使用psql.

为什么它在那个区域寻找,我能做些什么让它看起来在 Postgres 的正确位置(不管是什么)?

4

2 回答 2

7

对于 Homebrew 和 Postgres.app 的用户来说,这在 OS X 系统上非常普遍。

发生的情况是,您的 Rails 'Pg' gem 是针对 Apple 在某些 Mac OS X 版本上预安装的旧 PostgreSQL 版本编译的,而不是您自己安装的版本。发生这种情况是因为在您安装的版本之前PATH有 Apple 版本。pg_config

这些替代方案中的任何一个都将起作用:

  • 重新编译 Pg gem 以使用正确libpq的方法,方法是在编译之前设置 yourPATH以便正确pg_config在它上面(最佳选项);

  • 当你连接时设置一个显式的套接字目录host: /tmp,或者使用psql-h /tmp/

  • 使用 TCP/IP: host: localhost, psql -h localhost, 等;

您可以在此处找到更多详细信息:

于 2013-06-07T00:23:35.343 回答
0

检查您的database.yml文件。应该是配置不好

于 2013-06-06T14:52:28.583 回答