如何在计算机之间更新mysql表

时间:2013-01-17 17:41:19

标签: mysql database-design synchronize

我正在开发一个团队项目,我们都有一个在本地机器上运行的mysql数据库。该表主要具有用于图像处理的文件名和统计数据。我们都会运行一些处理,它会在结果中本地更新数据库。

我想知道一旦有人改变了他们的数据库,更新其他人的数据库的最佳方法是什么。

我的想法是在每次处理运行后执行mysqldump,并让git跟踪该文件(我们虔诚地使用它)。我为数据库编写了一堆python util,当我们检测到db落后时,将这个转储读入数据库就足够了。我不是真的想要这样做,更少它会阻塞我们的git repo与每次提交不必要的10-50Mb文件。

有谁知道更好的方法吗?

*我还会注意到我们是航空航天学生。我有一些数据库经验,但它只是出于需要。我们很忙,我不打算成为一名IT网络大师。只是想让它们为他们保留,因为他们是DB noob并且每当我告诉他们对数据库做任何事情时都会看到恐惧。到目前为止,我已经把它交给了他们。

2 个答案:

答案 0 :(得分:2)

您可能需要考虑遵循Rails风格的数据库迁移概念,在开发过程中,您提供了作为补丁工作的前滚和回滚SQL语句,允许您将数据库转换为任何特定的修订状态是必需的。

当然,这通常仅用于处理架构更改(即您不必担心修改可能动态填充到表中的数据)。对于内容基本上是静态的配置表或类似表,您当然也可以添加迁移。

谷歌搜索“用于python的rails迁移”发现了许多结果,包括以下工具:

http://pypi.python.org/pypi/simple-db-migrate

答案 1 :(得分:0)

我建议在任何共享主机上创建DEV MySQL服务器。 (无需DB经验) 允许远程访问此服务器。 (同样,不需要经验,一切都可以通过控制面板完成)
您和您的开发人员团队可以随时随地从任何设备访问数据库。 (只要你有互联网连接)