gpt4 book ai didi

postgresql - Rails 无需用户名和密码即可连接到数据库

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

我正在使用 Rails 4 开发 Web。在尝试配置生产环境时,我注意到既不需要用户名也不需要密码。我在database.yml下有如下配置:


development:
adapter: postgresql
encoding: unicode
database: walko
username: walko
password:
pool: 5
timeout: 5000<p></p>

<p>production:
adapter: postgresql
encoding: unicode
database: <%= ENV['DB_NAME'] %>
username:
password:
pool: 5
timeout: 5000
</p>

我可以从 rails console 实现到生产数据库的迁移和连接。

这怎么可能?

最佳答案

Rails 使用 Ruby Pg gem,它使用 PostgreSQL 的 libpq客户端库。

libpq如果未提供用户名,则使用当前系统用户名

如果peer,服务器不需要密码, ident sameusertrust身份验证用于 pg_hba.conf .如果服务器不请求密码,libpq不会尝试发送一个,也不关心是否丢失了一个。

您实际上也可以为数据库提供空字符串; libpq然后将使用与您的用户名相同的数据库(如果存在)。

关于postgresql - Rails 无需用户名和密码即可连接到数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24038316/

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