时常遇到一些希望从多个 MySQL 实例将数据复制到单个MySQL 实例上的需求场景,又苦于原生的 MySQL 并不支持这样的实现方案,开源社区中也没有哪位大拿提供解决这方面需求的插件。 有时候就想,要不公司里面组织力量修改一下 MySQL 代码来搞定这个问题得了。可转念一想,后面如果需要升级版本的时候怎么办呢?再修改一次代码?这样的成本有多大呢?如此的问题让人很是纠结。 最近突然想明白了:为啥非要在现在代码中来实现这个需求呢?为啥不能通过在外部想办法呢?我们需要的不是看上去的美,而是最终的结果。看上去漂亮完美的架构方案并不一定就是最好的。 如是就有了下面这样的想法:
由于 MySQL 开源的特性,实现上述功能其实很简单,还可以保持原生 MySQL 不会被动任何手术即可完成我们的需求,看来是该动手的时候了。
BTW: 我的需求中,各个 Master 中的数据是不会有任何重叠的。