Flyway基线现有SQL Server架构后migration_history表installed_by列NULL问题
Flyway基线后
installed_by字段为NULL的处理方案 问题原因
Flyway的基线操作(flyway baseline)逻辑上是标记现有架构为已基线状态,并非执行常规的迁移流程,因此不会自动填充installed_by字段——哪怕和后续迁移使用完全相同的JDBC URL,这个字段也会默认留空。而常规迁移操作因为是执行脚本并记录完整的执行上下文,所以能正常填充该字段。
手动修复步骤
如果需要补全基线记录的installed_by值,直接在SQL Server中执行以下更新语句:
UPDATE [your_schema].[flyway_schema_history] SET installed_by = 'your_db_user' WHERE type = 'BASELINE';
请替换
your_schema为实际的数据库架构名,your_db_user为执行基线命令时使用的数据库用户名。
后续验证
执行更新后,查询flyway_schema_history表确认基线记录的installed_by字段已被正确填充。后续执行flyway migrate时,新的迁移记录仍会自动填充该字段,无需额外配置。
内容的提问来源于stack exchange,提问作者Jim
相关产品推荐
相关产品推荐

