我们将JavaEE应用程序作为WAR部署在多桩野蝇服务器中。作为持久性框架,我们使用JPA和Hibernate作为实现。
为了获得与实体类匹配的DB,我们在persistence.xml
中有以下条目
<property name="hibernate.hbm2ddl.auto" value="update" />
因为我们的领域模型目前还很不稳定,所以现在使用它来方便地维护高度易失性的DB模式。
如果我们在一个服务器实例中部署WAR(包含相同实体),那么这两个WAR都将尝试更新DB模式。我们通过一个Ansible任务进行部署,这将导致从WAR和并行执行两个hbm2ddl
执行中并行启动,这会给我们带来错误。
现在的问题是,是否存在Hibernate内置的方式来禁止通过hbm2ddl
并行执行模式迁移。
发布于 2018-01-25 12:53:24
不是的。您应该考虑使用Flyway或Liquibase这样的工具迁移数据库。
https://stackoverflow.com/questions/48402684
复制相似问题