加入收藏 | 设为首页 | 会员中心 | 我要投稿 云计算网_泰州站长网 (http://www.0523zz.com/)- 视觉智能、AI应用、CDN、行业物联网、智能数字人!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

mysql之 MySQL 主从基于position复制原理阐述

发布时间:2022-03-23 15:39:49 所属栏目:MySql教程 来源:互联网
导读:mysql之 MySQL 主从基于position复制原理概述: 1 、主从复制简介 MySQL 主从复制就是将一个 MySQL 实例(Master)中的数据实时复制到另一个 MySQL 实 例(slave)中,而且这个复制是一个异步复制的过程。 实现整个复制操作主要由三个进程完成的,其中两个进
       mysql之 MySQL 主从基于position复制原理概述:

1 、主从复制简介
     MySQL 主从复制就是将一个 MySQL 实例(Master)中的数据实时复制到另一个 MySQL 实
     例(slave)中,而且这个复制是一个异步复制的过程。
     实现整个复制操作主要由三个进程完成的,其中两个进程在 Slave(sql_thread 和
     IO_thread),另外一个进程在 Master(IO 进程)上。
2 、主从复制 原理 、 机制
    要实施复制,首先必须打开 Master 端的 binary log(bin-log)功能,否则无法实现。
    因为整个复制过程实际上就是 Slave 从 Master 端获取该日志然后再在自己身上完全顺序的
    执行日志中所记录的各种操作。
复制的基本过程如下:
1)、Slave 上面的 IO_thread 连接上 Master,并请求从指定日志文件的指定位置(或者
从最开始的日志)之后的日志内容;
2)、Master 接收到来自 Slave 的 IO_thread 的请求后,通过负责复制的 IO 进程根据请
求信息读取指定日志指定位置之后的日志信息,返回给 Slave 的 IO_thread。返回信息中除
了日志所包含的信息之外,还包括本次返回的信息已经到 Master 端的 bin-log file 的以及
bin-log pos;
3)、Slave 的 IO_thread 接收到信息后,将接收到的日志内容依次添加到 Slave 端的
relay-log 文件的最末端,并将读取到的 Master 端的 bin-log 的文件名和位置记录到
master-info 文件中,以便在下一次读取的时候能够清楚的告诉 Master“我需要从某个
bin-log 的哪 个位置开始往后的日志内容,请发给我”;
4)、Slave 的 Sql_thread 检测到 relay-log 中新增加了内容后,会马上解析 relay-log
的内容成为在 Master 端真实执行时候的那些可执行的内容,并在本数据库中执行。

(编辑:云计算网_泰州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读