Flyway 的使用及Spring Boot集成Flyway


一、簡單介紹

Flyway 是一個開源、跨環境的數據庫遷移工具,它強烈主張簡單性和約定性而不是配置。

Flyway 是一個便於多人開發對數據庫管理的工具,將sql語句寫入文件中,只需要在控制台輸入指令就可以完成數據庫的修改

二、使用方法

參考:Flyway官方文檔

首先添加maven依賴,如果你使用其他管理工具,請依照官網進行使用

<!--引入flyway插件-->
<plugin>
    <groupId>org.flywaydb</groupId>
    <artifactId>flyway-maven-plugin</artifactId>
    <version>5.2.4</version>
    <configuration>
        <url>jdbc:mysql://localhost:3306/db_community</url>
        <user>root</user>
        <password>root</password>
    </configuration>
    <dependencies>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.6</version>
        </dependency>
    </dependencies>
</plugin>

你只需要會sql語句的寫法即可,將你需要執行的sql寫入一個文件,文件命名規則為V1.2__Description.sql,前面一個大寫字母V,接上數字,然后再寫兩個下划線,中間是你自定義文件名,盡量做到見名知意,文件以.sql結尾

存放目錄為:resources/db/migration

打開idea控制台,輸入mvn flyway:migrate,出現BUILD SUCCESS即執行成功,即使報錯,打印的日志也很清楚,可以很快的找到錯誤點

我在上面的文件寫了創建user表的語句,執行后發現數據庫額外多了一個flyway_schema_history表,這張表實際上記錄了你操作的信息

如果我想為user表添加一個bio字段,直接新建一個sql文件,起好名字,寫入sql語句,執行命令,切記,不能在上一個文件里直接修改!!!

可以看到,真的多了一個字段

flyway_schema_history表結構如下

三、常見錯誤

如果你遇到這樣的錯誤,百度對應版本,修改版本,使數據庫和Flyway版本在同一水平

這個錯誤是由於sql文件名寫錯了導致的,特別注意是兩個下划線!!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM