數據庫遷移 在軟件開發中,我們有svn、git這樣的版本管理器幫我們管理源代碼,我們可以很容的查看我們當前代碼的版本,更新新版本代碼、回滾到舊版本等等操作。如果我們不使用版本管理器進行源代碼管理,維護代碼將是一項十分痛苦的工作。 開發過程中,改變
數據庫遷移
在軟件開發中,我們有svn、git這樣的版本管理器幫我們管理源代碼,我們可以很容的查看我們當前代碼的版本,更新新版本代碼、回滾到舊版本等等操作。如果我們不使用版本管理器進行源代碼管理,維護代碼將是一項十分痛苦的工作。
開發過程中,改變的可能不僅僅是代碼本身,隨著業務需求的改變、技術設計的改變,我們數據庫的schema也可能發生改變,數據庫表中的某些值也可能發生改變。如果數據庫相關的信息沒有“版本管理”會出現什么問題呢?
假設我們項目中,有多個dev同時進行開發,在Build Pipeline上,有分為了Dev、CI、Test、Production這么幾個不同的環境:
Java中,我們也有一些可選的工具。Flyway就是其中挺不錯的一個http://flywaydb.org/
類似Flyway這樣的工具基本原理都非常簡單,數據庫版本的升級都是通過SQL或者Java代碼來完成。
每執行一次升級或者更新,數據庫中就會把這個操作的版本號記錄下來。這樣就可以非常容易的判斷出,當前數據庫處于哪個版本。
使用Flyway
Flyway的官方文檔已經做得比較詳細了,大家照著做做,一下就明白了。
Flyway First Step: http://flywaydb.org/getstarted/firststeps/api.html
for Java
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com