gpt4 book ai didi

ruby-on-rails - 致命 : Peer authentication failed for user "rails"

转载 作者:数据小太阳 更新时间:2023-10-29 07:10:38 26 4
gpt4 key购买 nike

我正在尝试运行 rake db:create在 DigitalOcean 服务器上使用 postgresql。

但是,它返回错误 Peer authentication failed for user "rails" ,引用config/database.yml登录凭据的存储位置

奇怪的是,当我通过 SSH 登录服务器时,这些凭据以纯文本形式显示给我。我都试过了 <%= ENV['APP_DATABASE_PASSWORD'] %>密码以纯文本形式显示给我,同样的事情发生了。

环境在生产中,我必须手动强制执行,因为应用程序在启动时正在开发中并强制它在 config/environments.rb 中更改不工作。

如果我不得不猜测,我可能会说环境中发生了一些有趣的事情,因为 DigitalOcean 将继续提供站点的缓存版本,直到服务器重新启动并且它可能仍然认为它正在开发中.但在我弄清楚如何在启动时将其强制投入生产之前,我有点像第 22 条军规。

这个问题是我在使用 postgres 并尝试在后端设置数据库之后遇到的问题,所以我需要完成一些事情。

非常感谢。

最佳答案

问题出在您的 pg_hba.conf 文件上。您可以在 /etc/postgresql/9.3/main/pg_hba.conf 中找到它。这里 9.3 是 postgres 版本,你可以用你的 postgres 版本来改变。有关身份验证的更多详细信息是 here .

你有这样的代码:

# TYPE  DATABASE        USER    ADDRESS             METHOD

# "local" is for Unix domain socket connections only
local all all peer

您可以将其更改为 md5trust

# TYPE  DATABASE        USER    ADDRESS             METHOD

# "local" is for Unix domain socket connections only
local all all trust

它将解决您的问题。

注意:要编辑 pg_hba.conf 文件,您应该在服务器上具有 sudo 权限。

关于ruby-on-rails - 致命 : Peer authentication failed for user "rails",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33951528/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com