在FATAL没有pg_hba.conf条目后,Rake中止了

时间:2014-05-19 21:21:35

标签: ruby-on-rails postgresql rake

尝试在CentOS 6.5上运行我的Rails 4.0.4(Ruby 2.1.1)应用程序

尝试迁移时失败:

$ rake db:migrate
rake aborted!
PG::ConnectionBad: FATAL:  no pg_hba.conf entry for host "::1", user "my_user", database "my_database_dev", SSL off

我不确定如何解决这个问题。在我的mac设置上,所有工作都很好,无需触摸pg_hba.conf。

欢迎任何领导。

我创建了my_user如下:

CREATE ROLE my_user WITH CREATEDB SUPERUSER LOGIN;

并允许my_user使用' trust'访问所有数据库。在pg_hba.conf

我的config/database.yml包含

development:
  adapter:  postgresql
  host:     localhost
  encoding: unicode
  database: my_database_dev
  pool:     5
  username: my_user
  password:
  template: template0

2 个答案:

答案 0 :(得分:0)

看起来rake由于某种原因传递了错误的主机,因为我认为 :: 1 不是您服务器的名称(它看起来像更像是Postgres配置中的各种IP掩码。 (修改: ::1是IPv6本地主机,根据Doon的评论如下。)

不确定为什么相同的代码在您的Mac上正常运行,但我认为database.yml配置中有Rails?您可能想尝试在那里指定host属性(如果您的服务器是本地的,它可以指向localhost)并查看是否有帮助。

host: localhost

如果Postgres不在Postgres安装的标准端口上,那么您还希望为port添加一个( 5432 ,默认安装)。

答案 1 :(得分:0)

:: 1是ipv6中的localhost。你的PostgreSQL配置没有v6的配置。尝试将服务器设置为127.0.0.1 localhost的ipv4地址。