Rails:rake db:create:all(无法连接到服务器)

时间:2012-05-07 13:20:44

标签: ruby-on-rails ruby postgresql rails-migrations rails-postgresql

按照截屏视频http://railscasts.com/episodes/342-migrating-to-postgresql?autoplay=true 直到“rake db:create:all”的步骤并得到错误:

  

无法连接到服务器:没有这样的文件或目录是服务器   在本地运行并接受Unix域套接字上的连接   “/tmp/.s.PGSQL.5432”?

参考Rails: rake db:create:all fails to connect to PostgreSQL database

上的问题

但仍无法解决。不确定是什么问题。 enter image description here

[database.yml的]

development:
  adapter: postgresql
  encoding: unicode
  database: store_development
  pool: 5
  username: amysukumunu 
  password:
test:
  adapter: postgresql
  encoding: unicode
  database: store_test
  pool: 5
  username: amysukumunu
  password: 

1 个答案:

答案 0 :(得分:4)

<强> [UPDATE2]

好的,这是你应该做的:

  1. unix套接字应该在/var/pgsql_socket(根据plist图像),而rails试图在/tmp中找到套接字文件。我相信这是错误的原因。所以编辑你的database.yml&amp;显式添加套接字位置。所以你的最终database.yml应该看起来像this。更改unix套接字位置的文件位置。现在尝试连接?
  2. 2)如果仍然没有连接。验证postgres服务器是否实际运行

    $ netstat -a | grep postgre
    

    如果正在运行,请尝试使用psql命令从终端连接到它。加入它,而不是运行。尝试手动启动它

    pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start
    

    如果仍然无法启动, server.log中是否有任何错误消息?如果是,请在此处发布。

    祝你好运! =======已更新=============== enter image description here enter image description here