|
Post by Mitu46544 on Oct 25, 2023 20:38:38 GMT -8
已应用的迁移以及迁移是否成功也包含状态但您通常不直接与其交互。但是当迁移失败时您将开始合作伙伴舞蹈来确定三者之间的差异因为数据库架构不反映迁移历史记录或架构。更重要的是如果迁移在生产中失败您可能会担心或者更糟糕的是恐慌爆炸半径的范围您有多少用户受到此影响系统处于什么故障模式服务级别协议可以为您提供多少停机时间来解决失败的迁移失败的架构迁移会使您的生产数据库处于。 未知状态通常需要手动干预确定迁移中哪些内容成功哪些内容失败以及如何失败以便您可以编写脚本进行恢复。如果您可以回滚架构迁移怎么办许多模式迁移工具允许 Whatsapp 号[码列表 您定义向下迁移一组用于反转向上迁移所执行的更改的步骤。通常向下迁移与向上迁移同时写入。表面上向下迁移允许您回滚迁移并将数据库架构恢复到迁移之前的状态。向下迁移是的常见功能请求。然而经过仔细考虑我们认为回滚向下迁移会给人一种错误的安全感并且常常会加剧情况。 考虑删除四列的迁移。相应的向下迁移会再次添加四列从而导致以下问题如果上迁移失败并且四个字段没有全部删除那么在下迁移中重新添加这些字段也会失败删除的列中的数据消失了重新添加列无助于恢复丢失的数据。如果模式迁移是原子的怎么办迁移失败问题的另一个潜在解决方案是事务或原子模式迁移。这个想法是将架构迁移包装在事务中并保证架构迁移要么完全执行要么根本不执行。虽然事务对于操作非常有用但对于架构迁移而言事务并不那。
|
|