当前位置:   article > 正文

MySQL 5.7多源复制功能的应用_mysql 多源复制功能

mysql 多源复制功能

MySQL 5.7有一个新特性,即支持多源复制,这个功能在有些场景下还是很有用的。

首先什么是多源复制呢?摘录开源中国社区中的一段说明:

“MySQL在这个新版本中修复了一个复制限制 , 这限制是一个从站只能有一个主站. 这是一个在我们设计复制环境中的限制因素,也有一些极客使它正常工作了。但是现在有一个官方的解决办法了。所以。简单的说, Multi-Source 意味着一个从站能有一个以上主站. 现在, 像下图一样的复制环境是可能的”



也就是说,我们可以在一个实例上(slave),访问多个实例的内容(master *)。

关于具体的说明和使用方法,可参见开源中国社区的翻译文章:MySQL 5.7 的多源复制


接下来说使用场景,我们业务有多个模块,每个模块都有一个独立的数据库实例。为了便于开发、产品统计数据或排查问题,同时又不影响线上使用,又对应配置了离线库(同步主库,低延时)。由于历史原因,这些离线库的实例分散在各个集群中,而一些分析需求(各种导数据)需要多个实例中表的数据。

以前的实现方式是每次查询一个实例,中间结果放到文件中,最后通过sed、awk等进行处理。

现在有了多源复制功能,我们就可以通过一个库,访问到所有业务库的数据,再也不用担心跨实例查询的问题了。


与dba交流了下,对于多源复制,还是有些东西要注意的(有说的不对的请指正):

1. 初次配置耗时较长,需要将各个“master”的数据dump下来,再source到“slave”上;

2. 需要考虑各“master”数据增长频率,“slave”的数据增长频率是这些的总和,如果太高,会导致大量的磁盘IO,造成数据更新延迟,最严重的是会影响正常的查询;

3. 如果多实例中存在同名的库,则同名库的表都会放到一个库中;

4. 如果同名库中的表名相同且结构相同,则数据会到一起;如果结构不同,则先建的有效。


以上~

欢迎用过这个特性的同学留言分享下经验~

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/在线问答5/article/detail/1008855
推荐阅读
相关标签
  

闽ICP备14008679号