最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

springboot配置flyway(入門(mén)級(jí)別教程)

 更新時(shí)間:2023年09月12日 15:30:11   作者:Mayz梅子子子  
本文介紹了springboot配置flyway,主要介紹基于SpringBoot集成flyway來(lái)管理數(shù)據(jù)庫(kù)的變更,具有一定的參考價(jià)值,感興趣的可以了解一下

1、Flyway的工作原理

Flyway在第一次執(zhí)行時(shí),會(huì)創(chuàng)建一個(gè)默認(rèn)名為flyway_schema_history的歷史記錄表,這張表會(huì)用來(lái)跟蹤或記錄數(shù)據(jù)庫(kù)的狀態(tài),然后每次項(xiàng)目啟動(dòng)時(shí)都會(huì)自動(dòng)掃描在resources/db/migration下的文件的版本號(hào)并且通過(guò)查詢(xún)flyway_schema_history來(lái)判斷是否有新增文件,從而判斷是否進(jìn)行遷移。默認(rèn)的查找 migration 的路徑為 classpath:db/migration ,對(duì)應(yīng) SQL 文件可放置在src/main/resources/db/migration 下,Java 類(lèi)可放置在 src/main/java/db/migration 下。

2、sql腳本命名規(guī)則

  • 僅需要執(zhí)行一次的,以大寫(xiě)“V”開(kāi)頭,V+版本后(版本號(hào)間的數(shù)字以“.” 或者“ _ ”分隔開(kāi),“ _ ”會(huì)自動(dòng)編譯成 “ . ” )+" __"+文件描述+后綴名;
  • 需要執(zhí)行多次的,以大寫(xiě)“R”開(kāi)頭,命名如R__clean.sql ,R的腳本只要改變了就會(huì)執(zhí)行,R不帶版本號(hào);
  • V開(kāi)頭的比R開(kāi)頭的優(yōu)先級(jí)要高。

前綴:用于版本控制(可配置)、撤消(可配置)和可重復(fù)遷移(可配置)VUR)
版本:帶有點(diǎn)或下劃線的版本可根據(jù)需要分隔任意數(shù)量的部分(不適用于可重復(fù)的遷移)
分隔符:(兩個(gè)下劃線)(可配置)__)
說(shuō)明:下劃線或空格分隔單詞
后綴:(可配置.sql)
(可選)版本控制 SQL 遷移還可以省略分隔符和說(shuō)明

3、引入maven依賴(lài)

    <!-- flyaway工具 -->
    <dependency>
        <groupId>org.flywaydb</groupId>
        <artifactId>flyway-core</artifactId>
        <version>5.2.4</version>
    </dependency

4、添加yml配置項(xiàng)(不做專(zhuān)門(mén)配置說(shuō)明的配置項(xiàng)按照默認(rèn)值)

flyway.baseline-description對(duì)執(zhí)行遷移時(shí)基準(zhǔn)版本的描述.
flyway.baseline-on-migrate當(dāng)遷移時(shí)發(fā)現(xiàn)目標(biāo)schema非空,而且?guī)в袥](méi)有元數(shù)據(jù)的表時(shí),是否自動(dòng)執(zhí)
行基準(zhǔn)遷移,默認(rèn)false.
flyway.baseline-version開(kāi)始執(zhí)行基準(zhǔn)遷移時(shí)對(duì)現(xiàn)有的schema的版本打標(biāo)簽,默認(rèn)值為1.
flyway.check-location檢查遷移腳本的位置是否存在,默認(rèn)false.
flyway.clean-on-validation-error當(dāng)發(fā)現(xiàn)校驗(yàn)錯(cuò)誤時(shí)是否自動(dòng)調(diào)用clean,默認(rèn)false.
flyway.enabled是否開(kāi)啟flywary,默認(rèn)true.
flyway.encoding設(shè)置遷移時(shí)的編碼,默認(rèn)UTF-8.
flyway.ignore-failed-future-migration當(dāng)讀取元數(shù)據(jù)表時(shí)是否忽略錯(cuò)誤的遷移,默認(rèn)false.
flyway.init-sqls當(dāng)初始化好連接時(shí)要執(zhí)行的SQL.
flyway.locations遷移腳本的位置,默認(rèn)db/migration.
flyway.out-of-order是否允許無(wú)序的遷移,默認(rèn)false.
flyway.password目標(biāo)數(shù)據(jù)庫(kù)的密碼.
flyway.placeholder-prefix設(shè)置每個(gè)placeholder的前綴,默認(rèn)${.
flyway.placeholder-replacementplaceholders是否要被替換,默認(rèn)true.
flyway.placeholder-suffix設(shè)置每個(gè)placeholder的后綴,默認(rèn)}.
flyway.placeholders.[placeholder name]設(shè)置placeholder的value
flyway.schemas設(shè)定需要flywary遷移的schema,大小寫(xiě)敏感,默認(rèn)為連接默認(rèn)的schema.
flyway.sql-migration-prefix遷移文件的前綴,默認(rèn)為V.
flyway.sql-migration-separator遷移腳本的文件名分隔符,默認(rèn)__
flyway.sql-migration-suffix遷移腳本的后綴,默認(rèn)為.sql
flyway.tableflyway使用的元數(shù)據(jù)表名,默認(rèn)為schema_version
flyway.target遷移時(shí)使用的目標(biāo)版本,默認(rèn)為latest version
flyway.url遷移時(shí)使用的JDBC URL,如果沒(méi)有指定的話,將使用配置的主數(shù)據(jù)源
flyway.user遷移數(shù)據(jù)庫(kù)的用戶(hù)名
flyway.validate-on-migrate遷移時(shí)是否校驗(yàn),默認(rèn)為true.

我的項(xiàng)目中只做了這些配置:

5、然后運(yùn)行就可以看到數(shù)據(jù)庫(kù)中多了一個(gè)flyway_schema_history表,會(huì)記錄執(zhí)行情況。

 到此這篇關(guān)于springboot配置flyway(入門(mén)級(jí)別教程)的文章就介紹到這了,更多相關(guān)springboot配置flyway內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 解決maven項(xiàng)目沒(méi)有Maven Dependencies的問(wèn)題

    解決maven項(xiàng)目沒(méi)有Maven Dependencies的問(wèn)題

    本文介紹了如何在Eclipse IDE for Enterprise Java Developers版本2019-12中配置Maven項(xiàng)目,通過(guò)新建項(xiàng)目、下載、導(dǎo)入等步驟,并解決了在JavaBuildPath中缺少M(fèi)avenDependencies的問(wèn)題
    2026-05-05
  • C語(yǔ)言指針數(shù)組案例詳解

    C語(yǔ)言指針數(shù)組案例詳解

    這篇文章主要介紹了C語(yǔ)言指針數(shù)組案例詳解,本文通過(guò)案例詳細(xì)的解釋了指針與數(shù)組的初始化還有關(guān)系與應(yīng)用,需要的朋友可以參考下這篇文章
    2021-07-07
  • IDEA整合Dubbo+Zookeeper+SpringBoot實(shí)現(xiàn)

    IDEA整合Dubbo+Zookeeper+SpringBoot實(shí)現(xiàn)

    初學(xué)者,想自己動(dòng)手做一個(gè)簡(jiǎn)單的demo,本文主要介紹了IDEA整合Dubbo+Zookeeper+SpringBoot實(shí)現(xiàn),需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-06-06
  • Java之經(jīng)典排序算法

    Java之經(jīng)典排序算法

    這篇文章主要介紹了Java的一些經(jīng)典排序算法,對(duì)Java算法感興趣的小伙伴可以詳細(xì)參考閱讀本文,對(duì)同學(xué)們有一定的參考價(jià)值
    2023-03-03
  • java對(duì)象序列化操作實(shí)例分析

    java對(duì)象序列化操作實(shí)例分析

    這篇文章主要介紹了java對(duì)象序列化操作,結(jié)合實(shí)例形式分析了java對(duì)象序列化操作相關(guān)實(shí)現(xiàn)步驟與操作注意事項(xiàng),需要的朋友可以參考下
    2019-11-11
  • Java實(shí)現(xiàn)推箱子游戲

    Java實(shí)現(xiàn)推箱子游戲

    這篇文章主要為大家詳細(xì)介紹了Java實(shí)現(xiàn)推箱子游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-05-05
  • 分頁(yè)技術(shù)原理與實(shí)現(xiàn)之Java+Oracle代碼實(shí)現(xiàn)分頁(yè)(二)

    分頁(yè)技術(shù)原理與實(shí)現(xiàn)之Java+Oracle代碼實(shí)現(xiàn)分頁(yè)(二)

    這篇文章主要介紹了分頁(yè)技術(shù)原理與實(shí)現(xiàn)的第二篇:Java+Oracle代碼實(shí)現(xiàn)分頁(yè),感興趣的小伙伴們可以參考一下
    2016-06-06
  • jenkins配置詳細(xì)指南(附j(luò)dk多個(gè)版本配置)

    jenkins配置詳細(xì)指南(附j(luò)dk多個(gè)版本配置)

    Jenkins是一款CICD(持續(xù)集成與持續(xù)交付)工具,Jenkins可以幫你在寫(xiě)完代碼后,一鍵完成開(kāi)發(fā)過(guò)程中的一系列自動(dòng)化部署的工作,這篇文章主要給大家介紹了關(guān)于jenkins配置的相關(guān)資料,文中還附j(luò)dk多個(gè)版本配置指南,需要的朋友可以參考下
    2024-02-02
  • Java對(duì)List進(jìn)行排序的方法總結(jié)

    Java對(duì)List進(jìn)行排序的方法總結(jié)

    在Java中,對(duì)List進(jìn)行排序是一項(xiàng)常見(jiàn)的任務(wù),Java提供了多種方法來(lái)對(duì)List中的元素進(jìn)行排序,本文將詳細(xì)介紹如何使用Java來(lái)實(shí)現(xiàn)List的排序操作,涵蓋了常用的排序方法和技巧,需要的朋友可以參考下
    2024-07-07
  • Java中關(guān)于size()>0?和isEmpt()的性能考量

    Java中關(guān)于size()>0?和isEmpt()的性能考量

    這篇文章主要介紹了Java中關(guān)于size()>0?和isEmpt()性能考量,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-02-02

最新評(píng)論

关岭| 奉节县| 高阳县| 华容县| 游戏| 伊宁县| 汤原县| 阿城市| 利津县| 五大连池市| 普兰店市| 晋中市| 阿瓦提县| 庆元县| 香港| 油尖旺区| 龙泉市| 云林县| 左贡县| 新乡县| 东明县| 通山县| 彭水| 皮山县| 宣汉县| 满洲里市| 绥江县| 阿荣旗| 始兴县| 静宁县| 电白县| 柞水县| 永顺县| 志丹县| 蓬莱市| 临湘市| 新津县| 宝兴县| 延安市| 仁布县| 布拖县|