我正在考虑使用Flyway进行数据库迁移。看起来它比创建我自己的SQL和Java迁移脚本更简单。但是,查看文档似乎有几种方法可以使用它。
在决定与(a)应用程序集成,(b)maven任务或(c)命令行进行迁移时,我应该考虑什么?
目前我使用简单的git push部署到heroku。这将构建我的应用程序并按照proc文件中的指定启动它。
所以在这方面,似乎应用程序集成(在启动时迁移)将是最简单的。但它似乎也是我不需要的开销。我想如果我执行maven任务,我需要确保heroku正确调用maven来实现这一点。
有什么权衡取舍?目前是否有人将Spring + JPA + Flyway与heroku托管的应用程序一起使用?
答案 0 :(得分:0)
你是对的,应用程序集成是最简单的。代码和数据库永远不会失去同步。
开销绝对很小,特别是与JPA相比。在启动时花费的几毫秒非常值得开发和部署方便。