在Springboot 中使用 flyway

1、添加maven依赖

        <dependency>
            <groupId>org.flywaydb</groupId>
            <artifactId>flyway-core</artifactId>
            <version>7.10.0</version>
        </dependency>

2、在 src/main/resources 目录下,新建文件夹 db/migration

在Springboot 中使用 flyway

注意,这里要先建一个 db 文件夹,再在 db 上建 migration 文件夹。

3、把SQL文件放进 db/migration 文件夹中。

注意SQL文件的命名,如:V1.0__init_database.sql。这里 V 是大写的,紧跟版本号。版本号后跟两个下划线__,后跟sql文件名。

在Springboot 中使用 flyway

4、修改 yml 配置文件

在yml文件中,添加这一段配置。

  # flyway配置(这里需要改一下URL和密码)
...
spring:
  flyway:
    url: jdbc:mysql://localhost:3306/hpe_ctl?createDatabaseIfNotExist=true&useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&failOverReadOnly=false&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
    user: root
    password: 123456
    baseline-on-migrate: true
...

flyway 常用配置信息,参考这篇文章:数据库版本控制Flyway

5、修改 pom.xml 文件

      <!--扫描db/migration下的SQL文件-->
        <resources>
            <resource>
                <directory>src/main/resources</directory>
                <includes>
                    <include>**/*.*</include>
                </includes>
            </resource>
        </resources>

为了扫描到 db/migration 目录下的SQL文件,需要在pom.xml中配置一下,参考文章:https://blog.csdn.net/qq_37950196/article/details/114987592

6、启动项目

启动成功后,会依次读取db/migration下的SQL文件。

数据库中就会新增了一个flyway_schema_history表,里面记载了 flyway 版本管理的明细。

下次需要更新数据库结构时,按照版本命令顺序,将SQL文件放进 db/migration 文件夹中,启动项目即可。

每天学习一点点,每天进步一点点。

上一篇:Redis常用配置解析


下一篇:数据库版本管理:flyway