2016-02-18 57 views
6

我在尋找建議在下面的情況。最佳實踐:如何修改flyway遷移腳本後使用

我在生產環境中設置了飛路和遷移腳本。在每個部署中,數據庫將被遷移到當前版本。 我已經創建了幾個已應用於生產數據庫的遷移腳本。

最近我升級了我的開發MySQL工具,現在包含有關使用已棄用函數和其他警告的警告。這些警告尚未顯示在舊版本中。 當然,我想修復這些警告,特別是對於未來版本的數據庫不再支持棄用函數的情況。 但包含警告的遷移已被部署和使用。如果我更改腳本的一個有飛路警告:

ERROR: Validate failed. Migration Checksum mismatch for migration 2.0 
-> Applied to database : 1778293504 
-> Resolved locally : 1831545539 

我可以改變存儲在數據庫中遷移的校驗和,但這並不聽起來像一個「好」的方式做到這一點。 在之後更改遷移腳本的常用方法/最佳實踐是什麼?

提前致謝!

Jens

回答

10

第一條規則是不要。

第二個是非常仔細地做,並使用Flyway.repair()重新調整DB中的校驗和與磁盤上的校驗和。

+1

好的,這就是我的預期:D 感謝您的時間和「修復()」的提示! – jdoose