【发布时间】:2015-11-19 10:54:57
【问题描述】:
我希望将 Grails DBMigrations 插件引入现有应用程序。
我的理解是,安装后要做的第一件事就是创建初始的 changelog.groovy,我已经用命令完成了
dbm-generate-gorm-changelog changelog.groovy
这确实会正确创建文件,并包含重新创建数据库架构所需的所有命令。
其次,我的理解是我应该发出命令 dbm-changelog-sync 以指示更改日志脚本已被执行。
如果我随后发出命令 dbm-gorm-diff 会发生什么?
此时我希望看到一个空的更改列表...因为初始架构已创建、提交并且没有对任何域进行任何更改,但是我看到了一堆条目..用于修改列类型和一些索引创建条目。
感谢任何建议,我已经达到了这一点,因为我想在生产环境数据库中更新数据库,并且不想开始在引导程序中编写手动测试和 SQL 来更新数据库,因为这最终肯定会导致到维持性偏头痛。使用 DBMigrations 似乎是前进的方向,但要么我不明白,要么它有问题,不想冒险使用它。
正如其他人在其他线程中评论的那样,我在发出命令之间重新启动 grails 控制台以避免重新加载问题。
谢谢
【问题讨论】:
-
注:使用的数据库是H2,可能这有一些怪癖?