2016-11-10 94 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等等。

我希望这会有所帮助。