2016-11-10 246 views
0

我目前正在爲雲託管的MySQL DB尋找版本控制工具。新的應用程序/工具也需要以雲託管。雲上的數據庫版本控制

我感興趣的東西是免費的或有名義費用。我查看了互聯網,但找不到滿意的解決方案。我的要求非常簡單,只需要捕獲對數據庫的所有更改,並且如果需要,我可以切換回數據庫的以前狀態。

你可以請建議一些我可以探索的選項。

謝謝

回答

0

有幾個任務/工具需要實現以考慮最小DB版本控制支持。

  1. 源代碼管理存儲庫 - 用於物理跟蹤文件更改的工具(即git,SVN,TFS等)。 Git是免費的。

  2. 提取DB的表示形式 - DB需要以某種文件格式表示才能進行版本控制。不建議數據庫文件本身受版本控制,也不建議備份數據庫並存儲這些數據庫文件。您需要將數據庫存儲爲語義表示形式,如.sql文件。有一些可以使用的免費工具(即mysqldump,HeidiSQL)。我喜歡使用HeidiSQL,因爲它具有允許您選擇性地創建轉儲腳本的功能。這些腳本可以存儲在版本控制系統中。

  3. 如果你正在尋找自動化,你會想要考慮實現一個像Jenkins這樣的構建服務器工具。 Jenkins可以配置爲輪詢git存儲庫,然後執行構建腳本(由您創建),如果它注意到更改。

我的一些答案是主觀的,我已經掩蓋了DB版本控制的幾個錯綜複雜。您可以研究關於數據庫版本控制的更多問題,這些問題有一些相當好的答案,並且指向寫得很好的博客帖子。在那裏還有大量的付費工具可以提供顯着的數據庫版本控制功能。僅舉幾例,就有Red Gate,DBMaestro,Liquibase,RoundhousE,MySQL Workbench等等。

我希望這會有所幫助。