springboot+flyway+oracle11g+mysql8 整合包

一堆坑

结论:目前 springboot 2.0.4 RELEASE 版本+flyway 2.4.0 是ok的,在mysql8.0.22 和oracle11g.2 都是没问题的。
 但 oracle的第一个脚本不执行,所以需要在oracle的脚本集合中的第一个脚本为空,第二个脚本才是初始化库的脚本。

这里直接将调好的代码贴上来:

pom.xml


    com.oracle
    ojdbc6
    这里是oracle驱动
    runtime


    org.flywaydb
    flyway-core
    4.2.0


下面是plugin

    org.flywaydb
    flyway-maven-plugin
    4.2.0

application.yml

server:
  port: 10003

spring:
  #配置文件激活环境使用的 service ,根据配置自动注入对应bean。目前支持: data/rdb
  profiles:
    active: rdb
  flyway:
    enabled: true
    #mysql/oracle
    type: mysql
    locations: classpath:db/migration/${spring.flyway.type}
    baselineOnMigrate: true
  datasource:
#这里是oracle11g.2的配置
#     url: jdbc:oracle:thin:@//localhost:1521/orcl
#     username: pidcad
#     password: root
#     driver-class-name: oracle.jdbc.OracleDriver

    url: jdbc:mysql://localhost:3307/pidcad?serverTimezone=UTC&characterEncoding=utf-8&useSSL=true
    username: root
    password: pidcad_2021
    driverClassName: com.mysql.cj.jdbc.Driver

下面是及脚本的位置

springboot+flyway+oracle11g+mysql8 整合包_第1张图片

剩下的默认就好了。

这里贴上一些坑的记录:

1 验证过springboot 2.4.0(目前最新版)+fly7.9.0(目前最新版),  mysql8 倒是可以,但是oracle11g的驱动flyway的 community 版已经不支持了,必须使用企业版。烦死了。但是community 版支持12c,不过没测试过。

你可能感兴趣的:(database,性能调优,测试,运维,辅助工具,java,spring)