《2017中国开发者调查报告》重磅发布!这是开发者最好的时代

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介:

MySQL Group Replication(简称MGR)是MySQL官方于2016年12月份推出的一个全新的高可用与高扩展的解决方案。MGR提供了高可用、高扩展、高可靠的MySQL集群服务,是MySQL数据库未来发展的一个重要方向。

场景描述

fd58442627a536561541b81aaed34ec565e87522

  • ip地址规划

644c66a5b668ab079865fcc40cc6c4203ce27f16

一个已经运行很久的MGR集群,以single-master模式运行(单主模式),binlog过期策略为7天。

  • 参数设置

e185c0ededb4d9b8927ace240a50d6939afa0b56

需求描述

因为不可抗力的因素,mgr-node3.up.com 节点永久性的down,并且无法恢复,或者mgr-node3.up.com 宕机超过时间7days, 或需要快速添加节点,那么该如何快速添加或扩容呢?

猜想

  • 如果这个问题发生在Percona XtraDB Cluster(pxc)或者Mariadb Galera Cluster,那解决方案就是通过SST(全量)或者IST(增量)来实现,那么MGR是否有相关的解决方案呢?
  • 假设MGR也是通过SST或者IST来的解决方案,加入MGR是否可以使用MySQLdump 或者rsync来获得一份全量?
  • 假设是通过MySQLdump来实现传递增量。是否可以用xtrabackup来替换呢?

验证

下面根据上述的猜想和假设来求证,如何优雅地添加MGR节点。

验证

猜想:在MySQL官方文档中没有找到关于SST或IST的描述,既然官方文档没有写,那么在实验环境中能否模拟出来呢?

  • 实验:在mgr-node1.up.com主节点创建一张表

027ea81b50a2eee0bb9fa92f7cb5b79a8856bd70

加入新的节点mgr-node4.up.com并初始化,开启现有环境所有节点的general_log,并观察general的输出mgr-node1.up.com 节点。

bba49ddcc5ff6ad4db7b5e16210a16c5e3247183

从general_log中找到了蛛丝马迹,目前版本的MGR,不支持SST或IST,实现的方式是根据GTID的方式来实现的。

同时在general_log中也发现,目前版本的MGR也不支持MySQLdump或者rsync方式来给新加入的节点传递全量。如果binlog被清空的话 则显示为空,新的节点无法加入集群,但

"root@localhost:mysql3306.sock [aa]>start group_replication; 会提示成功。

正确姿势

1.首先,需要手动在MGR集群中获得一致性备份。

2.初始化新节点,并应用备份。 注意如下操作,否则无法正常启动集群。

ba2f5c5a01333d2afedc2105fd3e6fb7fde2f123

3.安装官方文档正常初始化集群

4.验证

9267aaa15b13b04e1621378d9c6d752e0bcd414e

总结

1.如果需要添加一个节点

添加节点 需要自己手动在MGR集群中备份,MGR集群不存在SST和IST概念,而是完全通过GTID和binlog来实现“追数据”的一个操作。

2.节点宕机

如果MGR集群中某个节点宕机,宕机节点会询问存活集群,是否能补全binlog?如果能补齐,那么就会正常传输,进行追数据 ;如果宕机节点需要的日志不存在了,则该节点无法正常加入到集群环境中。

对于MGR一个建议

在宕机节点加入MGR集群中,如果发现需要的binlog日志不存在,则无法启动集群start group_replication。


原文发布时间为:2017-12-21

本文作者:田朋

本文来自云栖社区合作伙伴“数据和云”,了解相关信息可以关注“数据和云”微信公众号

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
打赏
0
0
0
0
73531
分享
相关文章
重磅发布 | 阿里云与钉钉官方出品,《数智化敏捷组织》正式发行!
重磅发布 | 阿里云与钉钉官方出品,《数智化敏捷组织》正式发行!
341 0
重磅发布 | 阿里云发布《新一代体系化创新的云》:共创数字新世界
编者按: 云计算是新型基础设施的重要组成部分,是数字经济时代下赋能传统企业数字化转型的关键使能器。阿里云与中国信通院产业与规划研究所联合发布《新一代体系化创新的云》行业研究报告,全面梳理了新一代体系化创新的云为产业发展带来的新动能。 文末附白皮书下载链接 全文约1876字,建议阅读时间8分钟。
459 0
重磅首发 |《Elasticsearch 中国开发者调查报告》探索开发者的现状和未来
为了了解Elasticsearch 中国开发者群体,结合1186位开发者的调研数据和18位社区专家的深度访谈,Elastic 技术社区、阿里巴巴 Elasticsearch 技术团队和阿里云开发者社区联合发布了《Elasticsearch 中国开发者调查报告》。免费下载,抢先一步读懂这个“族群”吧。
84629 0
重磅首发 |《Elasticsearch 中国开发者调查报告》探索开发者的现状和未来
【活动预告】宜搭携手Qcon出品全球软件开发者大会北京站低代码分论坛
5月30日,Qcon2021北京站低代码分论坛,由钉钉宜搭低代码平台负责人叶周全作出品人,本次分论坛定位《低代码实践与应用》将集合行业内低代码平台的典型案例,从用户的视角解读如何选择和使用低代码平台。
2512 0
【活动预告】宜搭携手Qcon出品全球软件开发者大会北京站低代码分论坛
2019北京Elastic开发者大会日程重磅上线 | 由阿里云联合赞助
2019年度Elastic中国开发者大会(北京)是由Elastic官方在中国举办的第三次开发者大会。阿里云作为Elasticsearch云上生态的主要推动者,很荣幸作为本次大会战略级合作伙伴参与其中,届时将和Elastic技术社区联合发布《Elasticsearch中国开发者报告》。
7898 0
2019北京Elastic开发者大会日程重磅上线 | 由阿里云联合赞助

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等