MGR架构 ~ 节点的维护相关问题
一简介:MGR节点的相关维护
二 两种情况
1 MGR读节点异常停止,然后重新启动加入节点进行数据同步
2 MGR读节点新加入集群成员,启动复制进行数据同步
三 通用过程
1 新加入节点通过通道group_replication_recovery进行异步的GTID复制
2 开启复制后,先应用本地没加入队列的relay-log中的事务
3 进行change随机进行选举组列表的机器作为dononr(有可能是写节点)
4 扫描donor节点最早的binlog日志开始逐渐扫描,读取,应用.(已经应用完的不会继续应用)
5 应用完binlog日志开始应用缓存在内存的消息队列
6 新节点设置为状态online
四 相关参数
group_replication_recovery_retry_count 重试次数
group_replication_recovery_reconnect_interval 重试间隔时间
五 特点
1 随机选择donor节点,改进了以前安装配置列表总选择一个节点的问题
2 由于是异步复制,donor本身是可读写的
六 备份相关
数据
1 指定备份方案,用于新节点加入或者故障节点的恢复
2 备份工具采用xtrabackup恢复即可
3 采用最新的备份恢复读节点,防止应用时间过长导致集群性能问题
binlog
1 指定binlog保留方案,防止因为purge binlog导致读节点无法同步数据的问题发生
七 一般过程
1 采用xtrabackup恢复出单实例
2 节点进行安装组件初始化
3 手动进行set purge,跳过已执行事务
4 开启复制并观察延时和状态
八 注意事项
1 最好在业务低峰期实现节点加入操作,防止集群受到影响
2 选取最新的备份,在binlog差量不大的情况下加入操作,防止集群收到影响
九 错误系列
1 从节点恢复所需要的donor节点的binlog被purge导致无法正常追赶的情况
2 发生OOM操作,在新加入节点应用binlog太多,内存队列堆积导致发生OOM甚至整个集群不可用
我们可以发现 都能根据第六部分进行解决
十 节点发生错误几种情况
1 读节点停止复制
2 读节点down掉
十一 和PXC的对比
1 donor节点不会停止应用队列,据我测试,依然会正常运行
2 依靠并行复制+binlog传输会快速追赶事务
3 追赶事务途中也会在内存中存储消息队列,但是暂没发现控制参数.pxc是有相关控制参数的
十二 总结
本文只代表个人观点,如果有误,可以留言本人会进行改正
MGR架构 ~ 节点的维护相关问题的更多相关文章
- MGR 架构 ~ DBA相关运维管理
一 简介:简述DBA相关管理MGR工作 二 监控 1 采用proxysql相关创造的view视图作为监控指标 三 备份 1 利用xtrabackup在读节点进行备份 2 设置binlog保留日期 四 ...
- MGR架构~单写模式架构的搭建
一 简介 :MGR一直没有时间测试,今天咱们来初步了解搭建一下呗 二 环境: mysql5.7.20 单台机器 启动三实例 三 mysql 搭建: 1 建立相关目录+ mkdir -p /data ...
- Mysql MGR架构误操作引发的问题处理
[背景介绍] 故障方描述:一次用户刷权限的时候不小心把数据库用户表记录删掉了,执行之后发现不对后重建用户,杀掉进程后重新MGR启动报错. [报错信息] 2018-06-13T12:47:41.4055 ...
- MGR架构 ~ MGR+proxysql(2)
一 简介: 上篇环境已经搭建完成,我们开始进行测试 二 工具和环境: sysbench ,mgr+proxysql 三 测试方式: sysbench+oltp.lua脚本 四 模拟故障 1 并发环境观 ...
- primecoin 全节点日常维护操作
primecoin 全节点日常维护操作: 一.关于primecoin维护,每天检查这6个地址是否能正常访问: http://api.primecoin.org/rest/pcoin/syncblock ...
- MGR架构~ 整体性能架构的调优
一 简介:MGR集群架构的调优二 过程:本文将从各个角度来具体阐述下三 硬件 1 硬件选择相同配置的服务器,磁盘,内存,cpu性能越高越好四 网络 1 0丢包和最好万兆网卡五 MGR本身 ...
- 支撑5亿用户、1.5亿活跃用户的Twitter最新架构详解及相关实现
如果你对项目管理.系统架构有兴趣,请加微信订阅号"softjg",加入这个PM.架构师的大家庭 摘要:Twitter出道之初只是个奋斗在RoR上的小站点,而如今已拥有1.5亿的活跃 ...
- MGR架构~高可用架构细节的梳理
一 简介:今天咱们来聊聊mgr的细节原理相关 二 选择新主机制 1 当主节点宕掉,自动会根据服务器的server_uuid变量和group_replication_member_weight变量值 ...
- MySQL集群MGR架构for多主模式
本文转载自: https://www.93bok.com MGR简介 MySQL Group Replication(简称MGR)是MySQL官方于2016年12月推出的一个全新的高可用与高扩展的解决 ...
随机推荐
- 将vcf文件转化为plink格式并且保持phasing状态
VCFtools can convert VCF files into formats convenient for use in other programs. One such example i ...
- 动态代理之: com.sun.proxy.$Proxy0 cannot be cast to 问题
转: 动态代理之: com.sun.proxy.$Proxy0 cannot be cast to 问题 2018年05月13日 00:40:32 codingCoge 阅读数:1211 版权声明 ...
- unittest的使用一
selenium: (1).firefox官方下载驱动geckodriver,windows:放在\python36或者是27的目录下 Mac: /usr/local/bin (2).firefox的 ...
- Luogu P4011 孤岛营救问题
题目链接 \(Click\) \(Here\) 注意坑点:一个地方可以有多把钥匙. 被卡了一会,调出来发现忘了取出来实际的数字,直接把二进制位或上去了\(TwT\),其他的就是套路的分层图最短路.不算 ...
- 插入排序Java版
package dataStructureAlgorithmReview.day01; import java.util.Arrays; /** * 插入排序 * @author shundong * ...
- JDK动态代理和CGLIB代理的区别
一.原理区别: java动态代理是利用反射机制生成一个实现代理接口的匿名类,在调用具体方法前调用InvokeHandler来处理. 而cglib动态代理是利用asm开源包,对代理对象类的class文件 ...
- 开源的,跨平台的.NET机器学习框架ML.NET
微软在Build 2018大会上推出的一款面向.NET开发人员的开源,跨平台机器学习框架ML.NET. ML.NET将允许.NET开发人员开发他们自己的模型,并将自定义ML集成到他们的应用程序中,而无 ...
- PHP7 网络编程(四)signal信号【待】
https://blog.csdn.net/summy_j/article/details/73199069
- window跟vue变量互相绑定
js实现变量监听 //定义一个对象,挂载到window下,后续在任何模块中,给这个对象的show属性赋值,都将触发set对应的代码,我这么写主要是为了解决vue子组件向父组件传值的问题 window. ...
- vue.js 树菜单 递归组件树来实现
树形视图 Example: https://vuefe.cn/v2/examples/tree-view.html 参照前辈方法实现的,觉得不错,记录一下: 父组件: <!-- 菜单树 --&g ...