更多文章,欢迎关注作者公众号,欢迎一起交流。

本篇介绍一下MySQL的高可用解决方案——MySQL InnoDB Cluster,其实,该方案并不是全新的架构,它是基于MySQL Group Replication、MySQL Shell和MySQL Router组成。相比较于MySQL原生的异步复制、半同步复制和Group Replication,InnoDB Cluster提供了更好的高可用和扩展特性,而且,当集群中的某一个节点或者少部分节点出现故障时,集群会自动选举主节点,从而继续提供服务,不会影响应用的正常访问,数据库服务达到持续可用的目的。

1 InnoDB Cluster架构

如下图示,一个InnoDB Cluster集群包括三部分,分别是MySQL Group Replication、MySQL Shell和MySQL Router,其中,MySQL Group Replication由多个MySQL实例组成,集群内提供了数据复制机制,且内建故障切换功能;MySQL Shell则主要利用AdminAPI对集群进行自动化管理,AdminAPI 提供多种形式,分别是JavaScript、Python和SQL; MySQL Router是集群的一部分,它是一个轻量级的中间件,用于在应用和后端数据库之间提供透明的路由和负载均衡。

2 InnoDB Cluster使用要求与限制

前面有提到,MySQL Group Replication(MGR)是InnoDB Cluster的一部分,那么使用MGR的要求与限制同样适用于InnoDB集群,比如以下要求与限制:

1)组成集群的MySQL实例必须使用InnoDB存储引擎;

2)数据库表必须具有主键,或者是非空的唯一键;

3)网络需有较好的性能,包括延迟和带宽;

4)唯一的服务器识别符(Server_ID);

5)开启二进制日志记录binlog,且日志格式为行Row格式;

6)开启GTID模式;

7)事务隔离级别须是读提交(READ-COMMITTED);

8)单个复制组中成员个数最大是9个;

9)事务大小限制,建议采用小事务;

10)集群中成员不能是其他集群的成员;

除了以上要求与限制外,还有其他的,具体可参照官网介绍。

3 InnoDB Cluster搭建

InnoDB Cluster的搭建可以采用手动方式(手动搭建MGR),也可以采用Shell自动搭建方式,建议利用MySQL Shell进行搭建,这样会更方便,且不容易出错。搭建过程可参照下面的文档:

关注公众号:看详细内容。

1)MySQL Shell 安装与基本使用

2)使用MySQL Shell搭建MGR环境

3)MySQL Router 安装与基本使用

4)手动搭建MGR环境(MySQL 8.0 高可用之MGR(组复制)介绍)

4 InnoDB Cluster监控

对于InnoDB Cluster的监控,可以使用Shell 的Admin API,常用的命令包括:

1)Cluster.describe()

2)Cluster.status()

3)Cluster.status({extended:1})

MySQL高可用之InnoDB Cluster相关推荐

  1. MySQL高可用架构InnoDB Cluster (和NDB Cluster是两码事)

    MySQL的高可用架构无论是社区还是官方,一直在技术上进行探索,这么多年提出了多种解决方案,比如MMM, MHA, NDB Cluster, Galera Cluster, InnoDB Cluste ...

  2. MYSQL高可用-Percona XtraDB Cluster

    简介 Percona XtraDB Cluster是MySQL高可用性和可扩展性的解决方案,Percona XtraDB Cluster提供的特性如下: 1).同步复制,事务要么在所有节点提交或不提交 ...

  3. mysql高可用方案对比

    通常用什么模型来解决mysql高可用性 AsynchronousReplicationAutomaticfailover 其原理是在一条异步复制通道上配置多个可用复制源,当某个复制源不可用时(宕机.复 ...

  4. MySQL高可用方案-PXC(Percona XtraDB Cluster)环境部署详解

    MySQL高可用方案-PXC(Percona XtraDB Cluster)环境部署详解 Percona XtraDB Cluster简称PXC.Percona Xtradb Cluster的实现是在 ...

  5. 108.第十九章 MySQL数据库 -- MySQL高可用 Galera Cluster(十八)

    6.3.3 Galera Cluster 6.3.3.1 Galera Cluster介绍 Galera Cluster:集成了Galera插件的MySQL集群,是一种新型的,数据不共享的,高度冗余的 ...

  6. MySQL高可用的几种方案

    首先我们看看MySQL高可用的几种方案:   对于数据实时性要求不是特别严格的应用,只需要通过廉价的pc server 来扩展Slave 的数量,将读压力分散到多台Slave 的机器上面,即可通过分散 ...

  7. 架构成长之路:常见的五种MySQL高可用方案分析

    1. 概述 我们在考虑MySQL数据库的高可用的架构时,主要要考虑如下几方面: 如果数据库发生了宕机或者意外中断等故障,能尽快恢复数据库的可用性,尽可能的减少停机时间,保证业务不会因为数据库的故障而中 ...

  8. mysql高可用方案MHA介绍

    mysql高可用方案MHA介绍 概述 MHA是一位日本MySQL大牛用Perl写的一套MySQL故障切换方案,来保证数据库系统的高可用.在宕机的时间内(通常10-30秒内),完成故障切换,部署MHA, ...

  9. MySQL高可用方案-PXC环境部署记录

    之前梳理了Mysql+Keepalived双主热备高可用操作记录,对于mysql高可用方案,经常用到的的主要有下面三种: 一.基于主从复制的高可用方案:双节点主从 + keepalived 一般来说, ...

最新文章

  1. 马斯克39页火星计划PPT曝光,我们能学到什么
  2. mysql添加普通用户用于管理单一数据库
  3. NOI2021模拟测试赛 解题报告
  4. [react] React为什么要搞一个Hooks?
  5. Qt::Window 独立窗口
  6. 如何解析一个字符串并返回一个嵌套数组?
  7. 盼望的意思是什么,怎么用盼望造句?
  8. hdu 变形课 1181 这道题数据真实若爆了
  9. docker具名和匿名挂载
  10. “rt.jar is not on its project's build path”
  11. Fritzing软件绘制Arduino面包板接线图传感器模块库文件170
  12. 数据结构习题及解析二
  13. 程序员需要建立的对技术、业务、行业、管理、投资的认知
  14. 刚开始做微商如何引流 ?一开始做微商没有客源怎么办
  15. 行业了解——挂耳咖啡
  16. 0018 求球的表面积和体积
  17. 申宝股票-A股长期向好趋势未
  18. html让同一行的文字和图片居中对齐显示
  19. 计算机显卡性价比推荐,哪个型号显卡性价比最高?显卡性价比天梯图告诉你答案...
  20. 【对讲机的那点事】带你玩转宝锋UV6R对讲机(一)

热门文章

  1. 【Rest API】Advanced REST Client浏览器插件rest api请求工具安装教程及使用说明
  2. 智慧社区管理系统08(维修和柱状图显现)
  3. docker容器——虚拟化
  4. python成长日迹--闭包
  5. linux内核head.S分析
  6. dcloud 是什么开发的
  7. C Primer Plus-位,字节和字
  8. 柏林噪声算法制作地图+小地图
  9. 数据结构与算法Python版-第一周测验
  10. 2022大三计算机 | 保研面试 | 专业课(数据结构、计组等) 数学(离散等) | 资料整理