将MySQL数据库置于版本控制之下?

我目前使用SVN为我的PHP项目。我想我应该让我的数据库在版本控制下,但什么是最好的方法呢?我只是在SVN的项目中创建一个db文件夹,将SQL更改粘贴到一个名为from_1.0_to_2.0.sql的文件并提交?
每当您对数据库进行更改时,都应该在迁移中保存这些更改,以便稍后在更新代码的同时在其他服务器上运行。但你基本上有正确的想法。您可以编写一些工具,使其更自动化;例如版本每个文件,然后在您的数据库中创建一个类似migration_version的表,它将包含数据库的当前版本。然后,您可以创建一个迁移脚本,该脚本将运行使数据库保持最新所需的所有迁移。

请注意,如果您想要双向数据库版本控制(以便您还可以还原到以前的数据库版本),则需要为每个版本编写所需的查询。

还有一些工具可以帮助您编写迁移,例如MySQLdiff

http://stackoverflow.com/questions/4883735/put-mysql-database-under-version-control

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:将MySQL数据库置于版本控制之下?