【问题标题】:Rails console no password supply errorRails 控制台没有密码提供错误
【发布时间】:2015-08-24 15:40:54
【问题描述】:

我正在运行一个使用 postgresql 作为数据库的 Rails 应用程序, 我在数据库上有一个密码为空的用户。 应用程序成功运行,但是当我试图 使用控制台中的模型我收到以下错误。

PG::ConnectionBad: fe_sendauth: no password supplied

【问题讨论】:

  • 你能解释一下当你“使用控制台中的模型”时你在做什么吗?例如,您正在输入的实际代码或其他任何内容。
  • 您找到解决方案了吗?我也有同样的问题。

标签: ruby-on-rails postgresql


【解决方案1】:

简短的回答,在您的 database.yml 文件中,替换:

host: localhosthost: ''

这应该可以解决问题。

长答案和解释请看this answer

【讨论】:

  • 这可能会导致各种 CI 环境出现问题。我通过这样做host: <%= ENV['MYAPP_DATABASE_HOST'] || 'localhost' %> 来解决这个问题。然后在您的开发机器MYAPP_DATABASE_HOST="" 上设置MYAPP_DATABASE_HOST 环境变量。不要在生产或 CI 中设置此 envar。
  • 你是个天才!
  • 它还返回Caused by: PG::ConnectionBad: FATAL: Peer authentication failed for user "postgres"。默认情况下,超级用户 postgres 没有密码我不应该在 pg_hba.conf 中将 peer 更改为 md5
猜你喜欢
  • 2014-07-13
  • 1970-01-01
  • 2012-12-11
  • 2016-10-15
  • 2017-09-24
  • 2016-01-16
  • 2014-02-23
  • 1970-01-01
相关资源
最近更新 更多