从spring-boot应用程序实例化数据库并为生产环境运行多个sql脚本

问题描述 投票:0回答:1

我有一个spring-boot应用程序需要转移到生产环境。我需要定义策略来实例化数据库,包括在数据库中创建表并添加一些默认值

我看到了spring.jpa.hibernate.ddl功能,但每次重启应用程序时都会创建/删除。另外,我读了一下关于flyway的内容,但这似乎是一个复杂的数据库迁移工具,我所要做的就是创建一些表,如果不存在的话。此外,我需要能够控制将运行的不同sql脚本的优先级。

是否有任何简单的方法(最好是开源)从具有定义优先级的spring启动应用程序运行多个sql脚本。

hibernate spring-boot flyway
1个回答
0
投票

您可以使用更新而不是创建

spring.jpa.hibernate.ddl-auto=update

除了创建和更新之外的其他一些选项是:

  • validate:验证模式,不对数据库进行任何更改。
  • 更新:更新架构。
  • create:创建架构,销毁以前的数据。
  • create-drop:在会话结束时删除模式

注意:但由于种种原因,这在生产中仍然不安全/首选。 Hibernate: hbm2ddl.auto=update in production?

© www.soinside.com 2019 - 2024. All rights reserved.