Heroku 永久数据库凭据

thu*_*ock 7 postgresql heroku

我决定在操作方面节省时间并转向 Heroku。我计划在 Heroku 上使用 postgres 数据库和另一个从同一个数据库读取的 dyno 上的生产 dyno。

但是当我打开postgres的设置时,它说:

数据库凭据
获取手动连接到此数据库的凭据。

请注意,这些凭据不是永久性的。
Heroku 会定期轮换凭据并更新附加此数据库的应用程序。

有什么好的方法可以解决这个问题?

Aks*_*hot 8

Heroku 文档

证书

不要将数据库凭据复制并粘贴到单独的环境或应用程序代码中。数据库 URL 由 Heroku 管理,在某些情况下会发生变化,例如:

  • 用户使用 heroku pg:credentials:rotate 启动数据库凭据轮换。
  • 导致 Heroku Postgres 员工在新硬件上恢复数据库的灾难性硬件故障。
  • 启用 HA 的计划上的自动故障转移事件。

最佳做法是在应用程序启动时始终从相应的 Heroku 应用程序中获取数据库 URL 配置变量。例如,您可以使用 Heroku CLI 遵循 12Factor 应用程序配置原则,并像这样调用您的流程:

DATABASE_URL=$(heroku config:get DATABASE_URL -a your-app-name) your_process
Run Code Online (Sandbox Code Playgroud)

这样,您可以确保您的流程或应用程序始终具有正确的数据库凭据。

  • `your_process` 的值是什么? (4认同)