【发布时间】:2016-11-20 14:12:57
【问题描述】:
我一直在寻找可以同步两个 MySQL 数据库模式的可移植脚本或命令行程序。我不是在寻找基于 GUI 的解决方案,因为它无法自动化或使用构建/部署工具运行。
基本上它应该做的是扫描database1和database2。检查架构差异(表和索引)并建议在其中一个上运行一组 SQL 语句,以使其获得与另一个相似的结构,尽可能减少数据损坏。
如果有人能指出实现此类解决方案的 PHP、Python 或 Ruby 包,我可以尝试从那里复制代码。
很多 MySQL GUI 工具可能都可以做到这一点,但我正在寻找可编写脚本的解决方案。
编辑:抱歉没有更清楚:我正在寻找的是表结构中的同步,同时尽可能保持数据完整。不是数据复制。
更多信息:
为什么复制不起作用。
- 安装基地遍布全州。
- 我们希望安装程序根据最新版本中的 chagnes 对数据库执行动态修复,而不管最终用户可能使用的是哪个旧版本。
- 更改大多类似于向表中添加新列、创建新索引或删除索引、添加表或删除系统内部使用的表(我们不删除用户数据表)。
如果是 GUI:不,不能使用。我们不想仅仅为了 DB diff 将 20MB 的应用程序与我们的安装程序捆绑在一起。特别是当原始安装程序小于 1 MB 时。
【问题讨论】:
-
+1 很好的问题。我正要问它,因为我正在寻找相同的解决方案......但找到了这个。
标签: mysql synchronization