spring_reference/IX. ‘How-to’ guides/68.5.1. Execute Flyway data...

1.4 KiB
Raw Blame History

68.5.1. 启动时执行Flyway数据库迁移

想要在启动时自动运行Flyway数据库迁移需要将org.flywaydb:flyway-core添加到你的classpath下。

迁移是一些V<VERSION>__<NAME>.sql格式的脚本(<VERSION>是一个下划线分割的版本号,比如'1'或'2_1')。默认情况下,它们存放在一个classpath:db/migration的文件夹中,但你可以使用flyway.locations一个列表来改变它。详情可参考flyway-core中的Flyway类查看一些可用的配置比如schemas。Spring Boot在FlywayProperties中提供了一个小的属性集,可用于禁止迁移,或关闭位置检测。

默认情况下Flyway将自动注入@PrimaryDataSource到你的上下文并用它进行数据迁移。如果你想使用一个不同的DataSource你可以创建一个并将它标记为@FlywayDataSource@Bean-如果你这样做了,且想要两个数据源,记得创建另一个并将它标记为@Primary。或者你可以通过在外部配置文件中设置flyway.[url,user,password]来使用Flyway的原生DataSource。

这是一个Flyway示例,你可以作为参考。