gpt4 book ai didi

ruby-on-rails-3 - 在 Heroku 中的 2 个应用程序之间共享数据库

转载 作者:行者123 更新时间:2023-12-03 05:03:40 25 4
gpt4 key购买 nike

我想从另一个 Heroku 应用程序访问应用程序的数据库。这在共享数据库中可能吗?

最佳答案

已更新

最初,这个答案指出,尽管可以通过一些技巧实现这一点,但强烈不鼓励这样做。这是基于 Heroku 开发者支持网站上的建议。然而,最近 Heroku 发布了一份通信,专门描述了如何实现这一目标,并淡化了他们在开发者网站上的建议。他们的电子邮件的这一部分的完整文本如下:

Did you know that Heroku apps can share a common database? For example, you can put analytics functions in a separate application from your user-facing code.

Simply set the DATABASE_URL config var for several apps to the same value. First, get the DATABASE_URL for your existing app:

$ heroku config | grep DATABASE_URL  --app sushi DATABASE_URL => postgres://lswlmfdsfos:5FSLVUSLLT123@ec2-123-456-78-90.compute1.amazonaws.com/ldfoiusfsf

Then, set the DATABASE_URL for new apps to this value:

$ heroku config:add DATABASE_URL=postgres://lswlmfdsfos:5FSLVUSLLT123@ec2-123-456-78-90.compute-1.amazonaws.com/ldfoiusfsf --app sushi-analytics
Adding config vars: DATABASE_URL => postgres://lswlm...m/ldfoiusfsf Restarting app... done, v74. That's it

— now both apps will share one database.

作为引用,Heroku 最初的建议是创建并使用 API 来远程访问数据。我个人的观点是,总体而言,对于许多情况来说,这是好建议(即比仅将多个应用程序连接到同一个数据库更好),尽管我可以看到这样做会带来更多麻烦而不是值得的情况.

更新

根据对此答案的评论,值得注意的是,Heroku 确实保留根据需要更改数据库 URL 的权利。如果发生这种情况,将导致您的辅助连接失败,您需要相应地更新 URL。

关于ruby-on-rails-3 - 在 Heroku 中的 2 个应用程序之间共享数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5981508/

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