MySQL数据库在线热备简介

Posted 锦衣admin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL数据库在线热备简介相关的知识,希望对你有一定的参考价值。

MySQL集群概述

集群的主要类型:

  • 高可用集群(High Available Cluster,HA Cluster)

  • 高可用集群是指通过特殊的软件把独立的服务器连接起来,组成一个能够提供故障切换(Fail Over)功能的集群(即把多个数据库服务器连接在一起共同对外提供服务)

如何衡量高可用:

可用性级别(指标)年度宕机时间描述叫法
99%3.65天/年基本可用系统2个9
99.9%8.76小时/年可用系统3个9
99.99%52.6分钟/年高可用系统4个9
99.999%5.3分钟/年抗故障系统5个9
99.9999%32秒/年容错系统6个9

计算方法:

1= 365= 8760小时
99% = 8760 * 1% = 8760 * 0.01 = 87.6小时=3.6599.9 = 8760 * 0.1% = 8760 * 0.001 = 8.76小时
99.99 = 8760 * 0.0001 = 0.876小时 = 0.876 * 60 = 52.6分钟
99.999 = 8760 * 0.00001 = 0.0876小时 = 0.0876 * 60 = 5.26分钟

常用的集群架构:

MySQL ReplicationMySQL的主从架构
MySQL ClusterMySQL的集群架构
MySQL Group Replication (MGR)主复制架构 ,5.7.17 版本新增的多主一从架构
MariaDB Galera ClusterMariaDB 分支也支持集群架构
借助外部软件构建高可用集群MHAKeepalivedHeartBeatLvsHaproxy等技术构建高可用集群

MySQL复制简介

什么是MySQL复制?

  • Replication可以实现将数据从一台数据库服务器(master)复制到一台到多台数据库服务器(slave)
  • 默认情况下,属于异步复制,所以无需维持长连接
  • 异步复制就是每隔一段时间去查看主服务器的数据有无发生变换,并不是实时监控,对服务器压力较小

MySQL复制原理

简单来说,master将数据库的改变写入二进制日志,slave同步这些二进制日志,并根据这些二进制日志进行数据重演操作,实现数据异步同步。

master:主 服务器

slave:从 服务器
在这里插入图片描述
详细描述:

当主从同步配置完毕后:

  1. slave端的IO线程发送请求给master端的binlog dump线程
  2. master端binlog dump线程获取二进制日志信息(文件名和位置信息)发送给slave端的IO线程
  3. salve端IO线程获取到的内容依次写到slave端relay log(中继日志)里,并把master端的bin-log文件名和位置记录到master.info里
  4. salve端的SQL线程,检测到relay log中内容更新,就会解析relay log里更新的内容,并执行这些操作,从而达到和master数据一致

MySQL复制架构

㈠ 双机热备(AB复制,也叫主从复制)

  • 默认情况下,master接受读写请求,slave只接受读请求以减轻master的压力。
    在这里插入图片描述

㈡ 级联复制

  • 优点:进一步分担读压力

  • 缺点:slave1 出现故障,后面的所有级联slave服务器都会同步失败

在这里插入图片描述

㈢ 并联复制(一主多从)

  • 优点:解决上面的slave1的单点故障,同时也分担读压力

  • 缺点:间接增加master的压力(传输二进制日志压力)

在这里插入图片描述

㈣ 双主复制

特点:

从命名来看,两台master好像都能接受读、写请求,但实际上,往往运作的过程中,同一时刻只有其中一台master会接受写请求,另外一台接受读请求。
在这里插入图片描述

以上是关于MySQL数据库在线热备简介的主要内容,如果未能解决你的问题,请参考以下文章

MySQL数据库在线热备(使用MHA搭建高可用架构)

MySQL数据库在线热备(使用MHA搭建高可用架构)

MySQL数据库在线热备(半同步复制)

MySQL数据库在线热备(主从复制之AB复制)

MySQL数据库在线热备(主从复制之AB复制)

MySQL,在线热备的内核原理!