Flyway迁移在H2嵌入式数据库中并不持久

只是

我实际上是在用Spring Boot编写一个小型Web应用程序,并想将一个(嵌入式)H2数据库与Spring Data JPA和Flyway一起用于数据库迁移。

这是我的application.properties:

spring.datasource.url=jdbc:h2:~/database;DB_CLOSE_ON_EXIT=FALSE;DB_CLOSE_DELAY=-1;
spring.datasource.username=admin
spring.datasource.password=admin
spring.datasource.driver-class-name=org.h2.Driver

在我的@SpringBootApplication类的main()方法中,执行以下操作:

ResourceBundle applicationProperties = ResourceBundle.getBundle("application");
Flyway flyway = new Flyway();
flyway.setDataSource(applicationProperties.getString("spring.datasource.url"), applicationProperties.getString("spring.datasource.username"), applicationProperties.getString("spring.datasource.password"));
flyway.migrate();

我添加了一个脚本,该脚本在数据库中创建了一个表USER,Flyway说它已正确迁移,但是如果我连接到数据库,则在模式PUBLIC中仅列出Flyway的schema_versions表。

如果我要添加另一个脚本,该脚本将基本数据插入到USER表中,则迁移将失败,因为在重启Spring Boot应用程序后该表不存在。

谁能告诉我配置中是否缺少内容?或者如果我的设置中有任何错误的假设...

弗洛里安·E。

我的配置数据不足

  1. 提示:请参阅迁移文件必须是dicrectory / db / migration的一部分

  2. 提示在分数下使用V1.0.1__name.sql 2之类的模式

  3. 提示取决于Flyway版本,您应该以大于1.0的sql文件版本(例如1.0.1)开头。

  4. 如果使用内存数据库,则默认的spring boot jpa提示会删除数据库内容。参见http://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-sql.html第28.3.3节。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

从H2嵌入式数据库迁移到PostgreSQL

Spring H2嵌入式数据库

如何使用H2嵌入式数据库获取序列中的nextvalue?

H2的嵌入式数据库在哪里存储数据?

Spring Boot中嵌入式H2数据库的默认名称是什么?

H2嵌入式数据库外键和参考

设置嵌入式h2数据库的端口号

春季启动。@DataJpaTest H2嵌入式数据库创建架构

嵌入式H2数据库的Spring Boot版本

无法创建嵌入式 h2 数据库

嵌入式H2数据库未运行

如何检查是否创建了 h2 嵌入式数据库?

动态文件的嵌入式 H2 数据库

Jasper Studio是否锁定H2嵌入式数据库?

Intellij 嵌入式 H2 数据库表不出现

H2数据库适合用作具有大表的嵌入式数据库吗?

如何在嵌入式H2数据库引擎运行时对其进行备份?

如何在 Mockito 单元测试期间生成 H2 嵌入式数据库?

H2嵌入式数据库在春季启动时的测试过程中未拾取属性

带有嵌入式H2的Tomcat WebApp:数据库可能已在使用中:“已被另一个进程锁定”

尝试通过WebSphere中的Hibernate访问H2嵌入式内存数据库时创建EntityManagerFactory时出错

如何使用Spring Boot将H2作为远程数据库而不是嵌入式模式连接到H2?

使用 Flyway 迁移的 Micronaut 项目上的 H2 数据库无法运行测试

我的 Spring 数据库 (H2) 不持久

H2数据库和oracle模式-仅使用不同的sql语句更改表-Flyway迁移测试

Maven中的嵌入式内存数据库

转换数据库中的嵌入式图片

如何从终端将持久性数据库导出到H2中的内存中数据库

NodeJS嵌入式数据库(持久且可加密)?