我使用数据库迁移将数据从旧网站导入到新网站。我已经创建了第一步作为第一步的发展阶段的新网站。然后,我计划创建另一个,在开发过程结束时完成最终的数据导入。
我当时面临的问题是,如果稍后需要另一个导入,会发生什么情况?
因为(由于许多原因),我们负担不起更好的解决方案(就像一个完整的安装程序,能够在任何时候迁移当前的数据),而且由于这种情况会发生一些小的变化,不会再次发生。我建议,在这种情况下,我们应该在所有其他迁移的基础上复制导入迁移,并再次执行它。
作为答复,有人建议我应该创造一种反复的迁移。也就是说,在迁移过程结束时更新数据库中的迁移表,更改自己的时间戳,从而迫使迁移系统“思考”,在所有其他迁移的基础上始终要应用新的迁移。
我对这样的建议感到有点惊讶。创造这样的东西是明智和安全的吗?
发布于 2015-03-24 09:49:52
如果我正确地理解了您,您只需要将数据从一个生产数据库迁移到一个开发数据库,您可能需要重复这个过程几次。因此,只要您以可重复的、幂等的方式实现迁移,这就不是什么大问题。最简单的解决方案可能是在新迁移之前从开发数据库中清除所有以前迁移过的数据,但是您可能对此并不满意,因为性能原因,或者因为您的开发数据库中有一些可能保存在那里的数据。如果是这样的话,您必须在这两个数据库之间设计一些同步机制,或者至少要设计一种机制来保存或重新创建开发DB中不想删除的数据。
我不能告诉您的是,修改迁移表的时间戳是否会成为一个问题--因为这个人需要知道框架的血淋淋的细节。
https://softwareengineering.stackexchange.com/questions/277221
复制相似问题