我正在为我的 Heroku 应用程序使用 postgresql 数据库。
我在 AmazonAws 上有非常大的数据库,因为 heroku 不提供 Postgresql 数据库。
现在我的客户想从 Heroku 切换到 EngineYard。
我可以在 EngineYard 上为我的应用程序使用相同的数据库(不进行备份然后重新加载)吗?
If YES
我如何将现有 AmazonAws 数据库与新的 EngineYard 应用程序一起使用或使用步骤。
我正在为我的 Heroku 应用程序使用 postgresql 数据库。
我在 AmazonAws 上有非常大的数据库,因为 heroku 不提供 Postgresql 数据库。
现在我的客户想从 Heroku 切换到 EngineYard。
我可以在 EngineYard 上为我的应用程序使用相同的数据库(不进行备份然后重新加载)吗?
If YES
我如何将现有 AmazonAws 数据库与新的 EngineYard 应用程序一起使用或使用步骤。
您可以,但前提是您使用的是专用数据库。来自Heroku 数据库常见问题解答
共享数据库
不,不支持从 Heroku 以外的机器连接到您的数据库。我们建议您将数据访问封装在 API 中以对其进行操作。
专用数据库
可以使用我们的 pg:ingress 功能连接到我们的专用数据库。请参阅使用 PG 控制台了解更多信息。
数据库连接字符串在DATABASE_URL
配置中可用。你可以跑
$ heroku config --long
查看它。但是,如果您使用共享数据库,它可能无法工作,因为似乎连接仅限于 Heroku 网络。
当然,这只是为数据库获取正确连接凭据的情况,而不管它在哪里托管?
例如,如果数据库在 Heroku 上,那么 ENV['DATABASE_URL'] 会为您提供所需的一切。然后所有这些细节都像往常一样进入你的database.yml(假设你正在使用ActiveRecord)
作为记录,Heroku 确实提供 Postgres,这是他们核心业务的一部分。