Heroku永久数据库凭据

时间:2018-01-06 05:20:46

标签: postgresql heroku

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

然而,当我打开postgres的设置时,它说:

  

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

     

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

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

2 个答案:

答案 0 :(得分:3)

来自Heroku Documentation

证书

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

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

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

DATABASE_URL=$(heroku config:get DATABASE_URL -a your-app) your_process

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

答案 1 :(得分:0)

可能将相同的数据库附加到两个heroku应用程序会更适合您。这样,pg凭据将由heroku自动管理。

我也在使用这种技术。我有一个面向客户端的应用程序,另一个具有共享同一数据库实例的操作应用程序。

您可以使用UI或CLI进行此操作

请参阅Share database between 2 apps in Heroku