MySQL面试题中:主从同步的原理

主从同步的原理:
1、主库上面有一个IO线程,从库上有一个IO线程和一个SQL线程,从库中的IO线程负责从主库读取binlog,并写入从库的中继日志;SQL线程负责读取并执行中继日志中的binlog,转换sql语句后应用数据库汇总
2、通信是:
  从库的IO线程给主库发送同步请求,请求中包含用户名密码和binlog的文件名,pos点
  主库验证成功后,发送从库需要的binlog日志文件,和binlog文件中pos点
  从库的IO线程接收后,把binlog文件转存到中继日志的relay-log文件,并把binlog文件名和pos点记录到master.info文件中,方便下次通信使用
  从库的SQl线程监测出relay-log文件后,把relay-log文件转换为binlog文件在本地执行,并把relay-log文件名和pos点记录到relay-log.info文件中
  从库再次发送下一轮的请求~~~

如果slave后面还挂有从库则也要开启binlog,并添加一个参数log-slave-updates

原文地址:https://www.cnblogs.com/itqingtian/p/9963986.html

时间: 2024-07-30 01:31:55

MySQL面试题中:主从同步的原理的相关文章

MySQL主从同步的原理:

主从同步的原理:1.主库上面有一个IO线程,从库上有一个IO线程和一个SQL线程,从库中的IO线程负责从主库读取binlog,并写入从库的中继日志:SQL线程负责读取并执行中继日志中的binlog,转换sql语句后应用数据库汇总2.通信是:① 从库的IO线程给主库发送同步请求,请求中包含用户名密码和binlog的文件名,pos点② 主库验证成功后,发送从库需要的binlog日志文件,和binlog文件中pos点③ 从库的IO线程接收后,把binlog文件转存到中继日志的relay-log文件,并

MySQL的3节点主从同步复制方案

上篇文章<为什么要对MySQL做主从同步复制>我们说明了MySQL主从同步的作用,主从同步的原理和主从同步的缺点.下面我们介绍下3节点中:2个节点互为主从,1个节点作为前2个节点的从,用于实现MySQL5.6的3节点主从同步复制方案. 主要步骤如下: 1.配置MasterA端同步复制时所需要的选项 2.在MasterA主库上创建同步复制时的用户并授权 3.MasterA主库锁表 4.记录MasterA主库的binlog以及pos位置节点 5.导出MasterA主库m_s_rep数据库 6.配置

MySQL的3节点主从同步复制方案测试

上接<MySQL的3节点主从同步复制方案> 六.测试主从同步复制 现在我们来测试下,mysql的主从同步. 1.在主库插入测试数据 先在主库MasterA 上给m_s_rep数据库插入和删除2条数据.如下: mysql> insert into test(id,content) values(3,'data3'); mysql> insert into test(id,content) values(2,'data2'); mysql> select * from test;

mysql主从同步以及原理

mysql主从复制介绍 当前的生产工作中,大多数应用的mysql主从同步都是异步的复制方式,即不是严格实时的数据同步. 实时和异步: 同步复制: 指的是客户端连接到MySQL主服务器写入一段数据, MySQL主服务器同步给MySQL从服务器需要等待从服务器发出同步完成的响应才返回客户端OK, 这其中等待同步的过程是阻塞的, 如果有N台从服务器, 效率极低 异步复制: 指的是客户端连接到MySQL主服务器写入一段数据, MySQL主服务器将写入的数据发送给MySQL从服务器, 然后直接返回客户端O

mysql 主从同步服务原理

主从同步是一个异步复制过程.master上开启bin-log日志功能.master  开启IO线程   slove  开启IO线程  SQL线程 从服务器执行 slave    start   通过授权用户连接master上  请求master发送bin-log  日志内容 !!!  master 接受slave  IO 线程请求后,返回给slave IO 线程 4 .slave 接受到信息后,将接受到的日志内容添加到slave端的relay-log文件最末尾,并将bin-log日志文件名mas

MySQL数据库多实例主从同步

本文主要介绍单台服务器MySQL数据库多实例的主从同步,一般常规做主从复制主从服务器在不同的机器上,并且监听端口均为默认的3306端口.一.环境介绍 操作系统:CentOS 6.5 数据库版本:MySQL 5.5.32 主库主机名称:mysql-master(172.18.10.222:3306) 从库主机名称:mysql-slave(172.18.10.222:3307) 二.主从同步原理介绍  简单描述主从复制原理: 1.在Slave服务器命令行执行start slave,开启主从复制开关

MySQL多实例,主从同步

由于背景原因,所做的主从同步还是要基于MySQL 5.1的版本,主从同步主要是一个数据库读写访问原来的数据库热度过大,需要做到使用从库对读分压. MySQL主从同步介绍 MySQL 支持单双向.链式级联.异步复制.在复制过程中,一个服务器充当主服务器(Master),而一个或多个其它的服务器充当从服务器(Slave). 如果设置了链式级联复制,那么,从(slave)服务器本身除了充当从服务器外,也会同时充当其下面从服务器的主服务器.链式级联复制类似A->B ->C ->D 的复制形式.

实现两个MySQL数据库之间的主从同步

一.    概述MySQL从3.23.15版本以后提供数据库复制(replication)功能,利用该功能可以实现两个数据库同步.主从模式.互相备份模式的功能二.    环境操作系统:Linux 2.6.23.1-42.fc8 # SMP(不安装XEN)Mysql版本:5.0.45-4.fc8设备环境:PC(或者虚拟机)两台三.    配置数据库同步复制功能的设置都在MySQL的配置文件中体现,MySQL的配置文件(一般是my.cnf):在本环境下为/etc/my.cnf.3.1 设置环境: I

mysql生产环境____主从同步修复案例

一.   硬件环境 Master: Dell R720 Intel(R)Xeon(R) CPU E5-2640 v2 @ 2.00GHz MEM 64G.disk 4*2.5 SAS  网络4* 千兆 Slave: Dell R720 Intel(R)Xeon(R) CPU E5-2640 v2 @ 2.00GHz MEM 64G,disk 4*2.5 SAS  网络4* 千兆 二.   软件环境 系统软件: Master: cento5.8 Slave: cento5.8 数据库软件:mysq