我决定在操作方面节省时间并转移到Heroku。我打算在Heroku上使用postgres数据库和另一个从同一个数据库读取的dyno制作生产dyno。
然而,当我打开postgres的设置时,它说:
数据库凭证
获取手动连接到此数据库的凭据。请注意,这些凭证不是永久性的 Heroku定期轮换凭据并更新附加此数据库的应用程序。
有什么好办法可以解决这个问题?
答案 0 :(得分:3)
请勿将数据库凭据复制并粘贴到单独的环境或应用程序的代码中。数据库URL由Heroku管理,在某些情况下会发生变化,例如:
最佳做法是在应用程序启动时始终从相应的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进行此操作