一尘不染

MySQL版本控制-Subversion

mysql

想知道是否可以对MySQL数据库进行版本控制。

我知道这个问题之前已经有人提出过,但是最新的问题是在一年之前,而且事情以变化的速度…

问题来了,每个开发人员在自己的计算机上都具有apache / MySQL /
PHP,有时他们会在该计算机上编辑数据库。如果他们必须向所有其他开发人员发送电子邮件,然后手动编辑测试服务器数据库,则相当不便。

您如何处理这个问题?

谢谢


阅读 420

收藏
2020-05-17

共1个答案

一尘不染

这本身不是与MySQL相关的解决方案,但是我们使用liquibase产品取得了很多成功。(http://www.liquibase.org/

它是一个迁移解决方案,涵盖了许多不同的数据库供应商,允许将所有数据库更改都编码在配置文件中,所有这些文件都保存在Subversion中。由于所有配置都保存在XML文件中,因此很容易将其他人的更改合并到主线脚本中,并且可以很好地与标签和分支一起使用。

通过运行“更新数据库”命令,可以将数据库升级到当前修订级别。大多数更改还具有回滚数据库更改的功能,这也可能会有所帮助。我建议您遵循确保在运行迁移之前获得最新版本的做法,因为这可能是最简单的。

最后,当涉及到生产交付时,您可以选择将所有数据库更改输出作为完整的SQL脚本输出,以便它可以允许DBA运行它并保持职责分离。

到目前为止,它的工作就像一个魅力。

2020-05-17