MySQL Group Replication小试

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
云数据库 RDS MySQL Serverless,价值2615元额度,1个月
简介:    最近看了下MySQL Group Replication的内容,因为发布的时间不是很长,可以算是一个新鲜玩意,而且因为它特有的意义,这个特性显得更加意味深长。   我接触Oracle的时间要长一些,所以很多时候都喜欢带着对比的眼光来看,单着自己尝试着用了下这个特性,感觉一下子让我找到了当年学习Oracle 10g RAC时的感觉,里面还是有一些小问题,而且还不少,眼巴巴的看着报错,但是日志又很有限,查阅资料,竟然不是bug就是找不到一些相关的信息,所以有时候有种信息孤岛的感觉。
   最近看了下MySQL Group Replication的内容,因为发布的时间不是很长,可以算是一个新鲜玩意,而且因为它特有的意义,这个特性显得更加意味深长。
  我接触Oracle的时间要长一些,所以很多时候都喜欢带着对比的眼光来看,单着自己尝试着用了下这个特性,感觉一下子让我找到了当年学习Oracle 10g RAC时的感觉,里面还是有一些小问题,而且还不少,眼巴巴的看着报错,但是日志又很有限,查阅资料,竟然不是bug就是找不到一些相关的信息,所以有时候有种信息孤岛的感觉。
  官网的资料自己也看了好几遍,在自己在电脑环境中也模拟了不下十次,每次感觉都是差一点,有一些让人感觉不大满意的地方,我觉得在这方面的付出可真不比Oracle少,而且我也知道这个新特性要达到成熟到普及,还需要时日。这个过程总是让人难忘而且艰辛。
   首先这个特性,使得MySQL和Oracle体量更加接近,看看下载的二进制包就让人手里一抖,压塑包600多M,但是解压后竟然有差不多2.6G.
  # du -sh ./*
2.6G    ./mysql-5.7.17-linux-glibc2.5-x86_64
625M    ./mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz
   如果仔细往下看,就会发现里面group replication的部分占用的空间确实不少。
   我想下面的这个图,如果要看group replication都要说上一段,各类博客中都有自然引用到,原来来自于官网的解读。
  
   从原生的Replication过渡到插件式的半同步,再到Group Replication,真是一个很大的进步,高可用方案随着这个技术的成熟相比也会逐渐成为一种趋势,从Galera到后面Percona包装的PXC,从Group replication的角度再回头来看,竟然发现是如此相似。Galera的作者都是一批20多年实战经验的老鸟,在技术成熟度方面肯定完全不逊于官方。所以选择哪一个或者哪一个更成熟,到时候会是摆在MySQL DBA面前的一个艰难的选择。
   然后再来一张图。MySQL 插件的结构图。
   
MySQL的这个高可用方案是一个share nothing的架构,这样也就使得整个架构是一个强一致性的设计方式,自然会用到组播的方式。
Oracle中搭建RAC需要一个集群软件,早期是可选第三方,后来统一为Oracle专供,也就是后来所说的Grid Infrastrue,不光整合力集群软件,ASM的部分也整合进去了,有点强拆的感觉。MGR的模式目前是推荐单主的形式,即读写分离的方式,也可以做到多主。
   MySQL Group Replication中的这个部分是由Corosync来实现的,corosync的由来是源于一个Openais的项目,可以实现HA心跳信息传输的功能,是众多实现HA集群软件中之一,在MGR早起的实验室版本还需要特意关注这部分的信息,特意的设定和配置使得集群环境能够稳步运行,MGR也是包含了绑定corosync的接口,这个接口实际上是corosync到client API的一个隐式映射。
   由此我也看到了几个不错的解决方案,

corosync+pacemaker+mysql+drbd 实现mysql的高可用,可以参考http://litaotao.blog.51cto.com/6224470/1303307
还有搭建Group Replication很有想法的一个实践,就是先配置gtid,然后切换到group replication,使得这个过程更加平滑。
  

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
16天前
|
存储 SQL 关系型数据库
MySQL Group 字段逗号链接
【4月更文挑战第26天】
|
5月前
|
SQL 关系型数据库 MySQL
MySQL GROUP BY 语句
MySQL GROUP BY 语句
|
1月前
|
缓存 关系型数据库 MySQL
MySQL查询优化:提速查询效率的13大秘籍(合理使用索引合并、优化配置参数、使用分区优化性能、避免不必要的排序和group by操作)(下)
MySQL查询优化:提速查询效率的13大秘籍(合理使用索引合并、优化配置参数、使用分区优化性能、避免不必要的排序和group by操作)(下)
|
1月前
|
SQL 存储 关系型数据库
【mysql】将逗号分割的字段内容转换为多行并group by
【mysql】将逗号分割的字段内容转换为多行并group by
|
2月前
|
SQL 关系型数据库 MySQL
923.【mysql】 only full group by 模式
923.【mysql】 only full group by 模式
23 1
|
3月前
|
监控 负载均衡 关系型数据库
MySQL技能完整学习列表13、MySQL高级特性——1、分区表(Partitioning)——2、复制(Replication)——3、集群(Clustering)
MySQL技能完整学习列表13、MySQL高级特性——1、分区表(Partitioning)——2、复制(Replication)——3、集群(Clustering)
56 0
|
4月前
|
关系型数据库 MySQL Java
MySQL group by分组后,将每组所得到的id拼接起来
MySQL group by分组后,将每组所得到的id拼接起来
35 0
|
5月前
|
关系型数据库 MySQL 数据库
Mysql-错误处理: Found option without preceding group in config file
Mysql-错误处理: Found option without preceding group in config file
180 0
|
5月前
|
SQL 算法 关系型数据库
MySQL查询优化之order by 、 group by与分页查询优化
MySQL查询优化之order by 、 group by与分页查询优化
61 0
|
5月前
|
SQL 关系型数据库 MySQL
MySQL中group by子句与having实例分析
MySQL中group by子句与having实例分析
48 0

推荐镜像

更多