加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

Spring Boot 2拭魅战:行使Flyway打点你数据库的版本改观

发布时间:2019-10-30 17:07:14 所属栏目:编程 来源:码农小胖哥
导读:1. 媒介 跟着项目标不绝迭代,数据库表布局、数据都在产生着变革。乃至有的营业在多情形版本并行运行。数据为王的期间,打点好数据库的版本也成为了急切的必要。怎样能做到像 Git 之类的版本节制器材来打点数据库?Java 项目中常用 Flyway 和 Liquibase 来

启动 Spring Boot 应用 。打开 H2 数据库节制台 http://localhost:8080/h2-console ,在 JDBC URL 一栏粘贴 jdbc:h2:file:D:/h2/flyway;MODE=MySQL;DATABASE_TO_LOWER=TRUE 并点击 Connect 按钮会进入以下界面:

Spring Boot 2拭魅战:行使Flyway打点你数据库的版本改观

这里 -1 是由于我们缺省了 Flyway 必要的 flyway_schema_history 表 。0 是由于 H2 数据库自动初始化了 Schema flyway ,其余数据库也许必要你手动来成立。

4.4 编写 SQL 改观剧本

我们编写一个 V1.0.0__Delete_sysuser_felordcn.sql 来删除 V1.0.1__Add_table_user.sql 中初始化的用户。你会发明启动报错了,由于我们开启了校验,以是对付逻辑错误的版本会抛出非常。我们将版本号变动为 V1.0.2__Delete_sysuser_felordcn.sql 再次启动。通过 H2 数据库节制台我们会发明多了一条改观记录:

Spring Boot 2拭魅战:行使Flyway打点你数据库的版本改观

同时 sys_user 表的数据也没有了,切合预期。

5. Flyway 最佳实践

通过上面的先容信托你很快就会行使 Flyway 举办数据库版本节制了。这里总结了一些在现实开拓中的行使履历:

  1.  出产务必禁 spring.flyway.cleanDisabled=false 。
  2.  只管停止行使 Undo 模式。
  3.  开拓版本号只管按照团队来举办多条理的定名停止紊乱。好比 V1.0.1__ProjectName_{Feature|fix}_Developer_Description.sql ,这种定名同时也可以获取更多剧本的开拓者和相干成果的信息。
  4.  spring.flyway.outOfOrder 取值 出产上行使 true,开拓中行使 false。
  5.  多个体系公用一个 数据库 schema 时设置spring.flyway.table 为差异的体系配置差异的 metadata 表名而不行使缺省值 flyway_schema_history 。

6. 总结

本日我们对 Flyway 数据库版本迁徙打点器材举办了先容并将之与 Spring Boot 相团结。这将大大类型我们的数据库打点,提跨越产服从。同时也分享了一些相等有效的出产实践履历。

【责任编辑:庞桂玉 TEL:(010)68476606】
点赞 0

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读