gpt4 book ai didi

ruby-on-rails - Rails 开发环境尝试连接到 AWS 数据库,而不是本地主机的 PostgreSQL

转载 作者:行者123 更新时间:2023-11-29 12:09:49 25 4
gpt4 key购买 nike

我有一个现有的 Rails 应用程序,它以前在我的本地笔记本电脑(运行 OSX)上成功运行,数据库本地存储在 PostgreSQL 中。我还使用 RDS 中的数据库成功地将 Rails 应用程序部署到 Elastic Beanstalk - 托管站点仍在运行。

我已经好几个月没有接触本地主机版本了,今天尝试使用 rails server -e development 启动它。 , 但在访问 http://localhost:3000/ 时按照惯例,我收到一条 PG 错误消息

PG::ConnectionBad at / FATAL: password authentication failed for user "murjfphxxxxxx" FATAL: no pg_hba.conf entry for host "115.x.x.x", user "murjfphxxxxxx", database "d37vsvehxxxxxx", SSL off

在 Rails 控制台中抛出相同的错误。似乎开发版正在尝试连接到 AWS 数据库,而不是 localhost 数据库,但我不明白为什么。

/config/database.yml 列出开发环境为:


development:
adapter: postgresql
encoding: unicode
database: <my-app>_development
host: localhost
pool: 5
username: postgres
password: <password>

我可以通过 PSQL 连接到 localhost PG 数据库并查看内容,因此看来 localhost PG 数据库是有效的。

为什么开发环境会尝试连接到 AWS 版本的数据库?如果您需要任何进一步的信息来调试它,请告诉我。

使用 ruby​​-2.3.1、Rails 4.2.0、PostgreSQL 9.6.0.0

最佳答案

您的环境中可能有 DATABASE_URL。您可以通过键入 env | 来检查grep DATABASE_URL 在终端中。

如果是这样,请尝试使用 unset DATABASE_URL 取消设置。

documentation 中所述:

If you have both config/database.yml and ENV['DATABASE_URL'] set then Rails will merge the configuration together. To better understand this we must see some examples.

When duplicate connection information is provided the environment variable will take precedence.

关于ruby-on-rails - Rails 开发环境尝试连接到 AWS 数据库,而不是本地主机的 PostgreSQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42202714/

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