2

我正在做一个小组项目,我们都有一个在本地机器上工作的 mysql 数据库。该表主要具有用于图像处理的文件名和统计信息。我们都将运行一些处理,用结果在本地更新数据库。

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

我的想法是mysqldump在每次处理运行后执行一次,并让 git 跟踪该文件(我们虔诚地使用它)。我已经为数据库编写了一堆 python 实用程序,当我们检测到数据库落后时,将这个转储读入数据库会很简单。不过,我真的不想这样做,更不用说每次提交都会用不必要的 10-50Mb 文件阻塞我们的 git 存储库。

有谁知道更好的方法来做到这一点?

*我还要注意,我们是航空航天专业的学生。我有一些数据库经验,但它只是出于需要。我们很忙,我不想成为 IT 网络专家。只是想为他们放手,因为他们是数据库新手,每当我告诉他们对数据库做任何事情时,都会露出恐惧的表情。到目前为止,我已经为他们做好了准备。

4

2 回答 2

2

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

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

谷歌搜索“rails migrations for python”出现了许多结果,包括以下工具:

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

于 2013-01-17T17:52:44.923 回答
0

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

于 2013-01-17T21:20:14.343 回答