2013-02-12 37 views
1

我能想到的唯一危险是使用Capistrano在生产数据库上回滚迁移的开发人员。 是否还有其他风险可以考虑,以及避免意外迁移/数据库重置等的最佳方法是什么?是否有任何理由不在生产数据库上使用Rails迁移?

编辑:我们确实有每日备份。我会这样改述我的问题:根本不使用迁移有什么好处(仅限手动模式更改)?你知道有哪些Rails团队在做它吗?

+0

除了每日备份之外 - 您可能希望在任何新部署之前备份数据库。 - 在我看来,迁移优于手动模式更改;您可以在dev和staging中多次运行它们以验证它们是否正常工作,然后当您部署时,您知道它们将在同一个庄园中执行。也许你想限制哪些开发人员有权部署到生产环境,设置更多开放访问的临时环境? – house9 2013-02-13 01:28:51

回答

0

这可能是一个更普遍的问题,关于prod数据库回滚的风险是什么。我会说,你需要确保如果模式会改变,确保现有的代码不会中断。避免意外更改的最佳方法可能是备份现有的产品数据库。这样,您可以确保您不会因回滚而失去一切。

2

可能存在数据损坏/不一致的可能性,尤其是在修改现有表时。

我建议在进行任何迁移或回滚之前,确保您拥有最新的备份,并在可能的情况下在临时环境中运行迁移,然后将其迁移到生产环境中。

相关问题