zoukankan      html  css  js  c++  java
  • 【flyway】Exception encountered during context initialization

    报错如下:

    "2018-03-20 12:58:09.585  WARN 18026 — [  restartedMain] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'flywayInitializer' defined in class path resource [org/springframework/boot/autoconfigure/flyway/FlywayAutoConfiguration$FlywayConfiguration.class]: Invocation of init method failed; nested exception is org.flywaydb.core.api.FlywayException: Validate failed: Migration checksum mismatch for migration version 1.3
    -> Applied to database : -1338247141
    -> Resolved locally    : 47067383"

    解决方法:

    原理:flyway是java 的sql migration库 如果检查resources/db/migrations/*.sql里边已经迁移过的sql文件 checksum有变动 就会报错

    启动之前将数据库删除 然后创建一个新的数据库,这样在启动之后会自动创建数据库中的表,保持一致 就不会报错了

    ======================================================================

    使用flyway进行数据库字端更改【数据库迁移】过程中 ,项目启动出现这样的问题 

    问题解析:

    这里的将这个数据库的字端 由字符串类型更改为整形过程中出现问题   ,是因为flyway要去做字端类型更改的时候更改失败,是因为这个字端已经在本地自己更改过了,flyway再去更改发现这个字端已经是int类型的,所以没办法再将这个字端由字符串类型更改为int类型了

    解决方法:

    1.如果本地数据库没有特别的数据,可以将本地的数据库删除,新建同名的数据库 重启服务即可

    2.如果是服务器端的数据库 不能删除数据库  那可以先在本地进行第一步的操作  然后 将flyway默认数据表中的数据 插入到数据库对应表中 重启即可 ,例如 本地数据库中数据表如下

  • 相关阅读:
    android中的一个圆角图片
    android中一个评分的控件
    C++ primer(第五版)中需要复习第二遍的知识点记录
    在ubuntu18.04上交叉编译opencv2.4.9
    C6748和音频ADC连接时候的TDM以及I2S格式问题
    C6748的启动方式问题
    AK5703的ALC
    cool edit工具介绍及使用
    CCS编译环境及TI仿真器的使用
    把YUV转化成opencv中的Mat格式的两行代码备份
  • 原文地址:https://www.cnblogs.com/sxdcgaq8080/p/8609270.html
Copyright © 2011-2022 走看看