【发布时间】:2021-12-27 22:28:09
【问题描述】:
我正在开发一个没有 Flyway 库的 JAVA 项目,该应用程序使用 PosgreSQL 数据库。 数据库、表、索引...的创建是通过在数据库服务器上执行的 SQL 指令脚本完成的。
我现在想使用 Flyway 进行未来的数据库修改,但我不知道是否可以即时集成它?你能确认这是可能的吗?如果是这样,是否需要设置任何特定配置?
非常感谢。
【问题讨论】:
-
是的,有可能。 Flyway - 在其核心 - 执行
.sql-files。如果我们防御性地编写初始.sql文件(捕获数据库的当前状态)(即使用CREATE TABLE IF NOT EXISTS ...),那么这应该是可能的。因此,第一次迁移应该捕获数据库的当前状态。我们要捕获数据库的整个状态,包括触发器、物化视图、函数……。如果“基础”做好了,我们只会通过新的迁移文件来修改数据库架构。 -
查看 FlywayDB.org 页面,Existing Database Setup。