暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

MySQL组复制(MGR)全解析 Part 3 组复制机制细节

宅必备 2019-07-24
224

 

往期专题请查看www.zhaibibei.cn
这是一个坚持Oracle,Python,MySQL原创内容的公众号

前期回顾

MySQL组复制(MGR)全解析  Part 1 组复制背景

MySQL组复制(MGR)全解析  Part 2 常用复制技术介绍

这期的专题我们来介绍MySQL组复制相关的内容

1. 故障检测(Failure Detection)

MGR包含一个故障检测的机制来发现和报告哪些服务器silent或者dead

故障检测器(failure detector)是一个分布式的服务,用来为哪些服务器故障(怀疑)提供信息

一个服务器被怀疑意味这该服务器无响应(mute)

当服务器A在一段时间内为收到服务器B的信息,一个超时异常发生并且服务器B会被标记为
suspicion状态,这意味着,组内其他的成员服务器会协调将其踢出复制组

如果一个服务器无法和其余的服务器通信,则他会怀疑其他服务器都故障了.

由于其服务器和组内其他服务器达成一致,它自身的怀疑是没有结果的,这时他无法执行任何本地事务

2.组成员关系(Group Membership)

MGR提供一个组成员关系服务(group membership service )来定义服务器的在线状态以及是否参与组

该关系可以查看视图来获得,该服务保证任何时间查询的视图是一致的

他成员添加到组和移除出组时会更新该视图,这个过程叫做重配置(reconfiguration)

重新配置过程中需要大多数节点同意,即组内故障服务器低于大多数,否则视图无法更新且会阻塞事务的执行以防止脑裂的发生

这时就需要人为的干预了

3.容错机制(Fault-tolerance)

MGR利用 Paxos分布式算法来协调组内成员,他需要组内到多数服务器在线以达到仲裁成员数从而进行决断

例如我们需要容忍f个服务器故障,则组内至少有2 x f + 1个成员


4. 参考资料

https://dev.mysql.com/doc/refman/5.7/en/group-replication-details.html



可点击阅读原文获得更好的阅读体验,推荐在PC端阅读

也可在公众站内搜索中回复 MGR  搜索相关内容

或直接打开个人网页搜索


http://www.zhaibibei.cn


往期专题包括:


  • Python 自动化运维

  • MySQL  安装

  • mysqldump命令详解

  • mysqlbinlog命令详解

  • xtrabackup工具详解

  • 打造属于自己的监控系统

  • Python爬虫基础

  • Oracle awr报告全解析

  • Oracle ASM全解析

  • Oracle Data Guard全解析

  • Oracle ClusterWare全解析

  • Oracle常见参数解析

  • Oracle常见故障处理

  • Oracle SQL优化案例


觉得文章不错的欢迎关注,转发,收藏~

文章转载自宅必备,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论