是否存在使用 Hibernate 指定模式的数据库模式迁移工具?

Posted

技术标签:

【中文标题】是否存在使用 Hibernate 指定模式的数据库模式迁移工具?【英文标题】:Does there exist a tool for DB schema migration where schema are specified using Hibernate? 【发布时间】:2011-02-27 12:42:06 【问题描述】:

我习惯了 Django South http://south.aeracode.org/,它允许 Django 项目的架构和数据迁移。 Hibernate 项目是否存在类似的工具?

【问题讨论】:

【参考方案1】:

Hibernate 提供自己的(有限的)tools 用于架构迁移。 它附带了几个警告,包括“不要将其用于生产实例”的警告,尽管我个人没有遇到任何针对 prod 系统的问题。

我不建议将它用于数据迁移或大规模关系映射更改,但对于简单的更改,它通常就足够了(至少,它可以运行以生成所需的 DDL 语句,以后可以手动运行)。

【讨论】:

【参考方案2】:

LiquiBase 确实提供了Hibernate support,但我没有这方面的实践经验。来自网页:

LiquiBase-Hibernate 集成将当前 Hibernate 映射所需的数据库更改记录到更改日志文件中,然后您可以在执行之前根据需要检查和修改该文件。

【讨论】:

以上是关于是否存在使用 Hibernate 指定模式的数据库模式迁移工具?的主要内容,如果未能解决你的问题,请参考以下文章

如果不存在,则通过将 spring Jpa 与 hibernate 一起使用来创建模式

如果 mysql 不存在 Hibernate 4 和 spring 4,则不会自动创建模式

Spring Boot JPA Hibernate:即使实体类中存在@Id,也没有为实体错误指定标识符

在Hibernate中,为什么saveOrUpdate在数据库中已存在对象时给出异常

spring.jpa.hibernate.ddl-auto=validate 是不是会更改数据库模式?

指定的模式名称不存在,或者您无权使用它