我在一个非常早期的项目中使用 Hibernate EntityManager 和 Hibernate Annotations for ORM。该项目需要尽快启动,但规范不断变化,我担心系统将启动并收集实时数据,然后规范再次更改,我将处于需要更改的情况数据库架构。
我该如何设置才能将这种影响降到最低?有没有处理这种迁移的开源项目? Hibernate 可以自动执行此操作(无需删除数据库)吗?
非常感谢您的建议。
最佳答案
与其说是技术问题,不如说是功能或组织问题。没有工具会自动猜测如何将数据从一种模式迁移到另一种模式。您最好学习如何编写存储过程以便迁移您的数据。
您可能需要禁用约束、创建临时表和列、复制大量数据,然后删除临时表和列并重新启用约束才能迁移您的数据。
进入维护模式后,每个修改模式的新功能还应附带脚本,允许从当前模式和生产中的数据迁移到新模式。
关于java - 应对 MySQL 模式不断变化的需求的策略?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5305043/