MySQL 5.7的复制架构,在有异步复制半同步增强半同步MGR等的生产中,该如何选择?

Posted 忘川的彼岸

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL 5.7的复制架构,在有异步复制半同步增强半同步MGR等的生产中,该如何选择?相关的知识,希望对你有一定的参考价值。

一、生产环境中:

几种复制场景都有存在的价值。下面分别描述一下:

  1. 从成熟度上来选择,推荐:异步复制(GTID+ROW)

  2. 从数据安全及更高性能上选择:增强半同步 (在这个结构下也可以把innodb_flush_log_trx_commit调整到非1, 从而获得更好的性能)

  3. 对于主从切换控制觉的不好管理,又对数据一致性要求特别高的场景,可以使用MGR

二、理由:

  1. 异步复制,相对来讲非常成熟,对于环境运维也比较容易上手

  2. 增强半同步复制,可以安全的保证数据传输到从库上,对于单节点的配置上不用要求太严格,特别从库上也可以更宽松一点,而且在一致性和性能有较高的提升,但对运维上有一定的要求

  3. MGR组复制。相对增强半同步复制,MGR更能确保数据的一致性,事务的提交,必须经过组内大多数节点(n/2+1)决议并通过,才能得以提交。MGR架构对运维难度要更高,不过它也更完美

总的来讲,从技术实现上来看:MGR> 增强半同步>异步复制。

未来可能见到更多的MGR在生产中使用,对于mysql的运维的要求也会更上一层楼。

以上是关于MySQL 5.7的复制架构,在有异步复制半同步增强半同步MGR等的生产中,该如何选择?的主要内容,如果未能解决你的问题,请参考以下文章

MySQL 5.7半同步复制技术

MySQL 5.7 新特性之增强半同步复制

深入MySQL复制:半同步复制

MySQL5.7 半同步复制

MySQL主从复制

发生故障转移时,MySQLFabric 是不是支持 mysql 复制半同步(5.7 版本)?