Flyway管理数据库MySQL5.7入坑记录(二)

在成功加入Flyway的Gradle的插件后,在Gradle的任务中选择flyway->flywayMigrate,进行数据库迁移操作,于是出现下面的问题。

第二坑:执行flyMigrate出现错误信息:flyway No database found to handle

出错信息是说没有相应的数据库处理,也就是说没有关于MySQL数据库的处理程序,将出错信息百度了一下发现很少出现这类错误,难道是我和别人做的不一样。于是尝试的工作只能停下来,看来只能去看Flyway的官方文档了。没有记录下在哪个地方发现Flyway中需要在Gradle中的buildscript块中配置MySQL的专门的处理包。于是修改build.gradle的buildscript部分内容如下所示。

buildscript {
    ext {
        springBootVersion = '2.5.13'
        FAST_MIRROR_REPO_URL = 'https://maven.aliyun.com/nexus/content/groups/public/'
        FLYWAY_VERSION = '9.2.0'
    }
    repositories {
        maven { url FAST_MIRROR_REPO_URL }
        mavenCentral()
    }
    dependencies {
        classpath "org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}"
        classpath 'mysql:mysql-connector-java:8.0.29'
        classpath "org.flywaydb:flyway-mysql:9.2.0"
    }
}

plugins {
    id "org.flywaydb.flyway" version "${FLYWAY_VERSION}"
}

flyway {
    url = 'jdbc:mysql://localhost:3306/jeesite4?useSSL=false&useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai'
    user = 'root'
    password = 'root'
    locations = ['filesystem:db/migration']
}

在buildscript的部分添加依赖

classpath "org.flywaydb:flyway-mysql:9.2.0"

至此Flyway终于可以工作了,可是随后的结果让人大跌眼镜。
posted @ 2022-08-28 22:48  培轩  阅读(609)  评论(0编辑  收藏  举报