You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flyway CLI执行脚本迁移时跳过非SQL文件的问题排查

Flyway OSS跳过非SQL脚本的问题分析

核心原因:版本功能限制

Flyway OSS 版本仅支持SQL格式的迁移脚本,PowerShell、Bash、Python这类非SQL脚本迁移是Flyway Teams(付费商业版)的专属功能。你看到的文档里包含.sh文件的示例,属于Teams版的功能范畴,OSS版无法识别并执行这类非SQL脚本。

命令行语法错误

你的执行命令存在两处明显问题:

  • 同时指定了migrate和info两个命令:Flyway CLI一次只能运行一个命令,需拆分执行(比如先执行flyway migrate完成迁移,再执行flyway info查看状态)
  • 参数-defaultSchema=“yes”t存在笔误:末尾多了t字符,且使用了中文双引号,应修正为英文双引号的-defaultSchema="yes"

修正后的migrate命令示例:

flyway migrate -url=jdbc:sqlserver:DB_URL -locations=filesystem:"/Users/blabla/repos/flyway" -user="USERNAME" -password="PASSWORD" -defaultSchema="yes" -table="flyway_schema_history" -cleanDisabled="true" -baselineOnMigrate="true" -baselineVersion="0.0.1"

总结

非SQL脚本被跳过的主要原因是Flyway OSS版本不支持该功能;同时命令本身的语法错误也会导致执行异常。若需执行非SQL格式的迁移脚本,需升级至Flyway Teams版。

内容的提问来源于stack exchange,提问作者OLA

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 20:25:54