三、資料庫版本控制的工具
Day 8 : 各語言的 ORM 提供的 Migration 方案
-> Day 9 : 第三方獨立工具 Migration 方案
我們主要會介紹 Flyway 與 Liquibase 這兩款都是使用JAVA 撰寫的開源資料庫遷移工具,兩者有很多相似之處
各有優勢也都是主流的資料庫遷移工具
以下兩款皆可以將遷移語法輸出成 Java 與純 SQL 的語法
也可整合進入 JAVA 的網頁框架 Spring Boot 內使用,皆有有很好的彈性與很高的使用率
而以下會重點介紹他們突出的特色
Flyway 會將異動的紀錄寫入 flyway_schema_history 這張資料表內,透過這張表來產生需要的遷移檔
免費版本就具備 Rollback 功能,能將目前資料庫還原到上一版本,付費版可以恢復到指定版本與設定指令僅還原部分的變更
更改部署的環境時需要為了每一個環境撰寫設定檔,如 dev.env, prod.env
Liquibase 會將異動的紀錄寫入 databasechangelog 這張資料表內,透過這張表來產生需要的遷移檔
免費版本不具備 Rollback 功能,僅付費版可用
能夠方便的使用標籤來更改部署的環境,如 dev, prod
這是資料庫版本控制的工具的最後一天,明日將會進到 解決進行資料庫版控會遇到的問題 篇章