如何在Elastic Beanstalk中恢复数据库?

我在Amazon Elastic Beanstalk上运行Ruby 1.9.3和Rails 3.2.8。 在我的数据方面出现了几个问题之后,我做了一个rake db:reload

现在我试图抓取我已在数据库预先重新加载中创建的数据。 我已按照亚马逊文档中的说明进行操作。

但是,在步骤6:在“数据库实例标识符”文本框中键入已还原的数据库实例的名称。 – 提示强制为实例提供新名称 – 从而创建新实例。

这一切都很好,除了我无法更改我使用Elastic Beanstalk的数据库实例,因此它对我来说无用。 除非我遗漏了什么。

请帮忙!!!

在互联网上倒了好几天之后 – 我尝试了一些有效的方法!

假设损坏的实例称为“badinstance”。 它有一个名为:badinstance.c5taqjjaja1d.us-west-2.rds.amazonaws.com:3306的端点

将数据库恢复到某个时间点之后,RDS将创建一个新实例,假设您将其称为“newinstance”。

你的Elastic Beanstalk仍然会指向badinstance.c5taqjjaja1d.us-west-2.rds.amazonaws.com:3306首先删除“badinstance” – 我知道可怕 – 在我实际点击“删除之前我做了多次备份。然后点击” newinstance“并选择修改。您将能够将实例标识符更改为”badinstance“。此时确保数据库实例上的安全组与您拥有的Elastic Beanstalk组相匹配。

更改名称花了很长时间(我在下午3点左右发出请求,并在第二天早上大约凌晨3点50分左右看到它)。

我重新启动了Elastic Beanstalk应用程序服务器并且瞧:数据已经恢复。

希望这将有助于未来的人。

山姆

@Samanta

默认情况下,在下一个维护窗口定义中应用修改数据库实例,您可以在修改屏幕中选中“立即应用”以立即应用更改。