SpringBoot項(xiàng)目集成Flyway進(jìn)行數(shù)據(jù)庫(kù)版本控制的詳細(xì)教程
Flyway是一款開源的數(shù)據(jù)庫(kù)版本管理工具,它更傾向于規(guī)約優(yōu)于配置的方式。
第一步:pom.xml添加maven依賴
<!-- https://mvnrepository.com/artifact/org.flywaydb/flyway-core --> <dependency> <groupId>org.flywaydb</groupId> <artifactId>flyway-core</artifactId> <version>5.0.7</version> </dependency>
第二步:開啟Flyway支持,在application.properties文件添加Flyway配置
# FLYWAY (FlywayProperties) flyway.baseline-version=1.0.0 flyway.enabled=true flyway.sql-migration-prefix=V flyway.sql-migration-suffix=.sql flyway.baseline-on-migrate=true flyway.location=db/migration
第三步:在resource目錄下創(chuàng)建db/migration目錄添加sql腳本
驗(yàn)證是否成功:項(xiàng)目啟動(dòng)時(shí),會(huì)運(yùn)行flyway執(zhí)行sql語(yǔ)句.生成schema_version表,用于記錄sql執(zhí)行情況.
當(dāng)sql文件修改后.比如多個(gè)空格,項(xiàng)目啟動(dòng)時(shí),該sql對(duì)應(yīng)的checksum字段與表記錄的不一致會(huì)報(bào)錯(cuò).
注意事項(xiàng):
FlywayProperties參數(shù)配置詳解
flyway.baseline-version 執(zhí)行基線時(shí)用來(lái)標(biāo)記已有Schema的版本。(默認(rèn)值:1)
flyway.enabled 開啟Flyway。 (默認(rèn)值: true 。 )
flyway.sql-migration-prefix SQL遷移的文件名前綴。 (默認(rèn)值: V 。 )
flyway.sql-migration-suffix SQL遷移的文件名后綴。 (默認(rèn)值: .sql 。 )
flyway.baseline-on-migrate 在沒有元數(shù)據(jù)表的情況下,針對(duì)非空Schema執(zhí)行遷移時(shí)是否自動(dòng)調(diào)用基線。
flyway.location 遷移腳本的位置。 (默認(rèn)值: db/migration 。 )
sql文件版本號(hào)命名的規(guī)范
每個(gè)公司的規(guī)范肯定不一樣.開發(fā)時(shí),只需要項(xiàng)目?jī)?nèi)遵循該規(guī)范即可,規(guī)范的確定并沒有對(duì)錯(cuò).提供一種sql文件命名規(guī)范僅供大家參考.
到此這篇關(guān)于SpringBoot項(xiàng)目集成Flyway進(jìn)行數(shù)據(jù)庫(kù)版本控制的文章就介紹到這了,更多相關(guān)SpringBoot集成Flyway數(shù)據(jù)庫(kù)版本控制內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- SpringBoot使用Flyway進(jìn)行數(shù)據(jù)庫(kù)遷移的實(shí)現(xiàn)示例
- SpringBoot使用Flyway進(jìn)行數(shù)據(jù)庫(kù)管理的操作方法
- springboot集成flyway自動(dòng)創(chuàng)表的詳細(xì)配置
- SpringBoot項(xiàng)目集成Flyway詳細(xì)過(guò)程
- SpringBoot整合flyway實(shí)現(xiàn)自動(dòng)創(chuàng)建表的方法
- SpringBoot集成Flyway進(jìn)行數(shù)據(jù)庫(kù)版本遷移管理的步驟
- SpringBoot使用flyway初始化數(shù)據(jù)庫(kù)
- SpringBoot整合flyway實(shí)現(xiàn)步驟解析
- Flyway詳解及Springboot集成Flyway的詳細(xì)教程
- SpringBoot整合Flyway的方法(數(shù)據(jù)庫(kù)版本遷移工具)
- springboot配置flyway(入門級(jí)別教程)
相關(guān)文章
spring?aop?pointcut?添加多個(gè)execution方式
這篇文章主要介紹了spring?aop?pointcut?添加多個(gè)execution方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-11-11SpringBoot?Web請(qǐng)求響應(yīng)詳細(xì)代碼示例
在Web開發(fā)中請(qǐng)求和響應(yīng)是必不可少的環(huán)節(jié),Spring Boot Web應(yīng)用中請(qǐng)求響應(yīng)的分層解耦是構(gòu)建高效、可維護(hù)系統(tǒng)的關(guān)鍵實(shí)踐,下面這篇文章主要介紹了SpringBoot?Web請(qǐng)求響應(yīng)的相關(guān)資料,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下2024-09-09Java加載properties文件實(shí)現(xiàn)方式詳解
這篇文章主要介紹了Java加載properties文件實(shí)現(xiàn)方式詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-07-07MyBatis-Plus實(shí)現(xiàn)對(duì)查詢結(jié)果進(jìn)行分頁(yè)的基本步驟
MyBatis-Plus 是一個(gè) MyBatis 的增強(qiáng)工具,在 MyBatis 的基礎(chǔ)上只做增強(qiáng)不做改變,為簡(jiǎn)化開發(fā)、提高效率而生,MyBatis-Plus 支持多種數(shù)據(jù)庫(kù)的分頁(yè)查詢,其分頁(yè)功能是通過(guò) Page 類實(shí)現(xiàn)的,本文介紹了使用 MyBatis-Plus 實(shí)現(xiàn)分頁(yè)查詢的基本步驟,需要的朋友可以參考下2024-08-08詳解Java ScheduledThreadPoolExecutor的踩坑與解決方法
最近項(xiàng)目上反饋某個(gè)重要的定時(shí)任務(wù)突然不執(zhí)行了,很頭疼,開發(fā)環(huán)境和測(cè)試環(huán)境都沒有出現(xiàn)過(guò)這個(gè)問(wèn)題。定時(shí)任務(wù)采用的是ScheduledThreadPoolExecutor,后來(lái)一看代碼發(fā)現(xiàn)踩了一個(gè)大坑。本文就來(lái)和大家聊聊這次的踩坑記錄與解決方法,需要的可以參考一下2022-10-10Java基礎(chǔ)之Thymeleaf的簡(jiǎn)單使用
這篇文章主要介紹了Java基礎(chǔ)之Thymeleaf的簡(jiǎn)單使用,文中有非常詳細(xì)的代碼示例,對(duì)正在學(xué)習(xí)java基礎(chǔ)的小伙伴們有非常好的幫助,需要的朋友可以參考下2021-04-04編寫Spring MVC控制器的14個(gè)技巧(小結(jié))
這篇文章主要介紹了編寫Spring MVC控制器的14個(gè)技巧,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11spring boot 使用Aop通知打印控制器請(qǐng)求報(bào)文和返回報(bào)文問(wèn)題
這篇文章主要介紹了spring-boot 使用Aop通知打印控制器請(qǐng)求報(bào)文和返回報(bào)文,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2018-04-04spring boot+thymeleaf+bootstrap實(shí)現(xiàn)后臺(tái)管理系統(tǒng)界面
這篇文章主要為大家詳細(xì)介紹了spring boot+thymeleaf+bootstrap簡(jiǎn)單實(shí)現(xiàn)后臺(tái)管理系統(tǒng)界面,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-12-12Vue.Js及Java實(shí)現(xiàn)文件分片上傳代碼實(shí)例
這篇文章主要介紹了Vue.Js及Java實(shí)現(xiàn)文件分片上傳代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-06-06