raft算法mysql主从复制_[MySQL] 主从复制原理

一、缘由最近在研究MySQL的复制及各种高可用架构,发现基本都是基于主从复制的组合。而主从复制是基于binary log的,故这里就详细介绍下基于binary log event(二进制日志事件)复制的原理。主从复制有实现两种方法:传统复制方式(基于server_id)和GTID(全局事务ID)。(MySQL5.6以后支持)二、原理详解1.简单来说(三个线程三个步骤):1)主服务器Master将数...
摘要由CSDN通过智能技术生成

一、缘由

最近在研究MySQL的复制及各种高可用架构,发现基本都是基于主从复制的组合。而主从复制是基于binary log的,

故这里就详细介绍下基于binary log event(二进制日志事件)复制的原理。

主从复制有实现两种方法:传统复制方式(基于server_id)和GTID(全局事务ID)。(MySQL5.6以后支持)

二、原理详解

1.简单来说(三个线程三个步骤):

1)主服务器Master将数据库的改变写入二进制日志文件,并维护一个等待从服务器连接的线程binlog_dump;

2)从服务器Slave会启动一个线程(IO Thread)和主服务器Master的binlog_dump线程建立连接,然后将数据

读取到从服务器Slave,并写入中继日志(Relay log);

3)从服务器Slave另一个线程(SQL thread)会从中继日志中读取数据,并在从数据库应用更新,完成数据同步。

2d9f629da84050fccf0b5f5d4fc4edeb.gif

2.细节实现:

MySQL使用3个线程来执行复制功能(一个在主服务器,两个在从服务器)。

1)当从服务器发出start slave时,从服务器Slave创建一个I/0线程,去连接主服务器Master并让他发送记录在其二进制日志中的语句。

2)主服务器Master创建一个线程Binlog Dump将二进制日志中的内容发送到从服务器Slave。(可在show processlist中看到

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值