Flyway 使用 flyway_schema_history
表来跟踪表的状态,这是 flyway 默认生成的表
当你只有一个服务或应用的时候,它表现的很棒
但是如果多个微服务同时使用这个默认表,就会报以下错误:
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
因为总有一个或几个微服务的中脚本 checksum 和表中记录的不一致
可以为每个微服务指定不同的表名:
spring: