我们从项目一开始就没有使用Flyway。我们正处于先进的发展阶段。让我们开始在Jenkins项目中使用Flyway。
从文档中,我理解的是:
将开发模式(DDL和DML)备份为SQL脚本文件,给一个文件名如v1_0_1 . __initial.sql.
使用"flyway Clean"清理开发数据库。
基线开发数据库"飞行路线基线-baselineversion = 1.0.0"
现在,执行flyway migrate"哪个将应用SQL脚本文件V1_0_1__initial.sql .
任何新脚本都应该使用更高的版本号(如V2_0_1__account_table.sql)
这是正确的方法还是有更好的方法?
不,这并不完全正确。清理然后再次执行你的DDL/DML可能是一个有用的测试,你已经得到了它的正确,但如果你清理数据库,就没有必要再基线了。
基线的正确顺序是:
-
将开发模式(DDL和DML)备份为SQL脚本文件,文件名为
V1_0_0_initial.sql
。 其他环境,运行
flyway migrate
-以便Flyway运行V1.0.0脚本。您的各种环境现在应该处于相同的状态
在<<li>strong>发展,运行flyway baseline -baselineversion=1.0.0
-这告诉Flyway数据库已经处于V1.0.0脚本所表示的状态,不应该再次运行。
任何新脚本都应该使用更高的版本号编写,并应用于flyway migrate
的每个环境