MySQL 主从复制原理及过程讲解
mysql主从原理描述,摘自老男孩。
下面简 单描述下 MySQL Replication 复制的原理及过程 。
1.在 Slave 服务器上执行 start slave 命令开启主从复制开关,主从复制开始进行 。 2)此时, Slave服务器的 I/O线程会通过在 Master上已经授权的复制用户权限请求
2.此时, Slave服务器的 I/O线程会通过在 Master上已经授权的复制用户权限请求连接 Master 服务器 ,并请求从指定 binlog 日志文件的指定位 置(日志文件名 和位置就是 在配置主从复制服务时执行 change master 命令指定的)之后开始发送 binlog 日志内容 。
3.Master服务器接收到来自 Slave服务器的 I/O线程的请求之后,其上负责复制的 binlog dump 线程会根据 Slave 服务器的 I/O 线程请求的信息,分批读取指定 binlog 日 志文件所指定位置之后的 binlog 日志信息,然后返回给 Slave 端的 I/O 线程 。 返回的信 息中除了 binlog 日 志内容之外,还包括在 Master 服务器端记录的新的 binlog 文件名称, 以及在新的 binlog 中的下一个指定的更新位置 。
4.当 Slave服务器的 I/O线程获取到 Master服务器上 I/O线程发送的日志内容及 日志文件和位置点之后 ,会将 binlog 日志内容依次写入到 Slave 端自身的 Relay Log (即 中继日志)文件(MySQL-relay-bin.xxxxxx)的最末端,并将新的 binlog文件名和位置记录到 master-info 文件中,以便下 一 次读取 Master 端新 binlog 日志时,能够告诉 Master 服务器需要从新 binlog 日志的指定文件及位置开始请求新的 binlog 日志内容 。
5.slave服务器端的 SQL线程会实时地检测本地 Relay Log 中 I/O线程新增加的日 志内容,然后及时地把 Relay Log 文件中的内 容解析成 SQL 语句, 并在自身 Slave 服务 器上按解析 SQL 语句的位置顺序执行和应用这些 SQL 语句,并将当前应用中继日志的 文件名及位置点记录在 relay-log.info 中 。
经过了上面的过程,就可以确保在 Master端和 Slave端执行了同样的 SQL 语句 。 在复制状态正常的情况下, Master 端和 Slave 端的数据 是完全一样 的 。 当然, MySQL 的 复制机制也包含一些特殊的情况,具体请参考官方的说明,大多数情况下,大家是不用 担心的 。
MySQL 主从复制原理及过程讲解的更多相关文章
- mysql 主从复制原理
主从形式 mysql主从复制 灵活 一主一从 主主复制 一主多从---扩展系统读取的性能,因为读是在从库读取的: 多主一从---5.7开始支持 联级复制--- 用途及条件 mysql主 ...
- Mysql主从复制原理及配置
Mysql主从复制原理及配置 1.复制概述 Mysql内建的复制功能是构建大型,高性能应用程序的基础.将Mysql的数据分布到多个系统上去,这种分布的机制,是通过将Mysql的某一台主机的数据复制到其 ...
- MySQL主从复制--原理
简介 Mysql内建的复制功能是构建大型,高性能应用程序的基础.将Mysql的数据分布到多个系统上去,这种分布的机制,是通过将Mysql的某一台主机的数据复制到其它主机(slaves)上,并重新执行一 ...
- 如何实现 MySQL 的读写分离?MySQL 主从复制原理的是啥?如何解决 MySQL 主从同步的延时问题?
如何实现 MySQL 的读写分离? 其实很简单,就是基于主从复制架构,简单来说,就搞一个主库,挂多个从库,然后我们就单单只是写主库,然后主库会自动把数据给同步到从库上去. MySQL 主从复制原理的是 ...
- Mysql主从复制原理及搭建
## Mysql主从复制原理 主从复制是指一台服务器充当主数据库服务器,另一台或多台服务器充当从数据库服务器,主服务器中的数据自动复制到从服务器之中.对于多级复制,数据库服务器即可充当主机,也可充当从 ...
- mysql主从复制原理及实践
Mysql主从复制原理及实践 mysql主从框架 MySQL主从架构是MySQL集群中最基本也是最常用的一种架构部署,能够满足很多业务需求,常见的有一主一从或者一主多从.可以防止单一主机的 ...
- 深度探索MySQL主从复制原理
深度探索MySQL主从复制原理 一 .概要 MySQL Replication (MySQL 主从复制) 是什么? 为什么要主从复制以及它的实现原理是什么? 1.1 MySQL 主从复制概念 MySQ ...
- MySQL 主从复制原理不再难
上篇我们分析过 Binlog 日志的作用以及存储原理,感兴趣的可以翻阅: 一文带你了解 Binlog 日志 Binlog 日志主要作用是数据恢复和主从复制.本身就是二进制格式的日志文件,网络传输无需进 ...
- MySQL(13)---MYSQL主从复制原理
MYSQL主从复制原理 最近在做项目的时候,因为部署了 MYSQL主从复制 所以在这里记录下整个过程.这里一共会分两篇博客来写: 1.Mysql主从复制原理 2.docker部署Mysql主从复制实战 ...
随机推荐
- 我用Python一键保存了半佛老师所有的骚气表情包
本文首发于公众号「Python知识圈」,如需转载,请在公众号联系作者授权. 2019年发现两个有意思而且内容比较硬核的公众号.都是同一个人运营的,我们都叫他半佛老师,现实中的职业是风控,公众号内容涉及 ...
- js多线程的实现
我们都知道JS是一种单线程语言,即使是一些异步的事件也是在JS的主线程上运行的(具体是怎么运行的,可以看我另一篇博客JS代码运行机制).像setTimeout.ajax的异步请求,或者是dom元素的一 ...
- 吊打面试官系列:Redis 性能优化的 13 条军规大全
1.缩短键值对的存储长度 键值对的长度是和性能成反比的,比如我们来做一组写入数据的性能测试,执行结果如下: 从以上数据可以看出,在 key 不变的情况下,value 值越大操作效率越慢,因为 Redi ...
- BUUOJ [BJDCTF 2nd]elementmaster
[BJDCTF 2nd]elementmaster 进来就是这样的一个界面,然后就查看源代码 转换之后是Po.php,尝试在URL之后加上看看,出现了一个“.“ ....... 迷惑 然后看了wp 化 ...
- 永恒之蓝MS17010复现
MS17010复现 靶机win7:192.168.41.150 攻击kali: 192.168.41.147 扫描 通过auxiliary/scanner/smb/smb_ms17_010模块扫描 ...
- 2019-2020-1 20199329《Linux内核原理与分析》第二周作业
<Linux内核原理与分析>第二周作业 一.上周问题总结: 未能及时整理笔记 Linux还需要多用 markdown格式不熟练 发布博客时间超过规定期限 二.本周学习内容: <庖丁解 ...
- Scala教程之:Option-Some-None
文章目录 Option和Some Option和None Option和模式匹配 在java 8中,为了避免NullPointerException,引入了Option,在Scala中也有同样的用法. ...
- Android 工程师眼里的大前端:GMTC 2018 参会总结
本文由玉刚说写作平台提供写作赞助 原作者:两位低调的 Android 高手 版权声明:本文版权归微信公众号玉刚说所有,未经许可,不得以任何形式转载 概述 2018年的GMTC大会于6月22号在北京刚刚 ...
- Binary Index Tree
0 引言 Leetcode307 这道题给一个可变数组,求从\(i\)到\(j\)的元素之和. 一个naive的做法是,每次查询都从\(i\)累加到\(j\): class NumArray { pu ...
- java socket实现服务端,客户端简单网络通信。Chat
之前写的实现简单网络通信的代码,有一些严重bug.后面详细写. 根据上次的代码,主要增加了用户注册,登录页面,以及实现了实时显示当前在登录状态的人数.并解决一些上次未发现的bug.(主要功能代码参见之 ...