如何手动清理针对数据库运行的最后一次 flyway 迁移
Posted
技术标签:
【中文标题】如何手动清理针对数据库运行的最后一次 flyway 迁移【英文标题】:how do I manually cleanup the last flyway migration that ran against a database 【发布时间】:2017-04-20 13:06:55 【问题描述】:我想手动删除已针对数据库成功运行的 flyway 迁移。这是最后一次运行的迁移。
这行得通吗:
手动还原在迁移脚本中执行的更改(它添加了一列,因此将删除该列)
从 schema_version 表中删除迁移条目
我还有什么需要做的吗?
【问题讨论】:
【参考方案1】:是的,这会起作用,但此外,如果您不希望它在下一个 migrate
上再次运行,则需要删除有问题的迁移脚本。
如果您想保留迁移但对其进行更改,也可以利用 repair
。
【讨论】:
【参考方案2】:理想情况下,如果您想撤消迁移所做的更改,您应该创建另一个迁移脚本来执行此操作。推荐这种做法,因为它可以避免在 flyway 之外修改 DB 状态。
【讨论】:
以上是关于如何手动清理针对数据库运行的最后一次 flyway 迁移的主要内容,如果未能解决你的问题,请参考以下文章
需要设置一个配置文件,让 Flyway 在重新启动时清理数据库