mysql主从复制原理
2012-01-30 19:19
701 查看
参考文章:http://blog.itechol.com/space-33-do-blog-id-5064.html
mysql主从复制工作原理:
(1) master将改变记录到二进制日志(binary log)中(这些记录叫做二进制日志事件,binary log events);
(2) slave请求master的binary log events并写到中继日志(relay log)中;
(3) slave重做中继日志中新的事件
复制过程主要涉及到三个线程,两个线程(sql和IO线程)在slave服务器,另一个线程(IO)在master服务器。
(1)在每个事务更新数据完成之前,master在二进制日志中记录这些改变,在事件写入二进制日志完成后,master通知存储引擎提交事务。
(2)slave的IO线程连接上master,并请求指定二进制日志文件的指定位置后的日志内容。初始时通过下面的命令来设置slave端请求的master端的日志和位置
mysql>change master to master_host='192.168.1.106', master_user='replication', master_password='000000', master_log_file='binlog.000006', master_log_pos=107;
(3)master接收到来自slave IO线程的请求后,通过负责复制的IO线程(master)读取请求的二进制日志文件指定位置后的日志信息,并返回给slave端的IO线程。返回的信息中除了日志内容还包含本次返回的信息在master端的binary log文件的名称和读取的位置
(4)slave的IO线程接到信息后,将接收的日志内容写入slave端的relay log(mysql-relay-bin.xxxxx)文件的末端,并将读取到的master的binary log的文件名和位置记录到master-info文件中,以便在下次向maser请求时,能够清楚的告诉maser “我需要哪个binary log的哪个位置后的日志内容,并发给我”
(5)slave的SQL线程检测到relay log中有新的内容后,马上解析该日志中的内容为,可执行的query语句,并在slave端执行这些query。从而使得slave端和master端的数据保持一致性
mysql主从复制工作原理:
(1) master将改变记录到二进制日志(binary log)中(这些记录叫做二进制日志事件,binary log events);
(2) slave请求master的binary log events并写到中继日志(relay log)中;
(3) slave重做中继日志中新的事件
复制过程主要涉及到三个线程,两个线程(sql和IO线程)在slave服务器,另一个线程(IO)在master服务器。
(1)在每个事务更新数据完成之前,master在二进制日志中记录这些改变,在事件写入二进制日志完成后,master通知存储引擎提交事务。
(2)slave的IO线程连接上master,并请求指定二进制日志文件的指定位置后的日志内容。初始时通过下面的命令来设置slave端请求的master端的日志和位置
mysql>change master to master_host='192.168.1.106', master_user='replication', master_password='000000', master_log_file='binlog.000006', master_log_pos=107;
(3)master接收到来自slave IO线程的请求后,通过负责复制的IO线程(master)读取请求的二进制日志文件指定位置后的日志信息,并返回给slave端的IO线程。返回的信息中除了日志内容还包含本次返回的信息在master端的binary log文件的名称和读取的位置
(4)slave的IO线程接到信息后,将接收的日志内容写入slave端的relay log(mysql-relay-bin.xxxxx)文件的末端,并将读取到的master的binary log的文件名和位置记录到master-info文件中,以便在下次向maser请求时,能够清楚的告诉maser “我需要哪个binary log的哪个位置后的日志内容,并发给我”
(5)slave的SQL线程检测到relay log中有新的内容后,马上解析该日志中的内容为,可执行的query语句,并在slave端执行这些query。从而使得slave端和master端的数据保持一致性
相关文章推荐
- MySQL主从复制的原理及配置方法(比较详细)
- MariaDB/Mysql之主从架构的复制原理及主从/双主配置详解(一)
- mysql 主从复制 双主从复制原理 防止主键重复问题(必看)
- MySQL 主从复制的原理和配置
- mysql主从复制的原理及配置实现
- Mysql之主从复制原理
- MySQL 主从复制的原理和配置
- MySQL 主从复制原理探索
- mysql主从复制原理和注意事项
- Mysql的主从复制原理及配置(一)
- Mysql主从复制原理
- mysql主从复制框架图及原理理解
- [置顶] MySQL的主从复制原理
- MySQL 主从复制的原理和配置
- Mysql之主从复制原理
- MySQL主从复制原理配置
- Mysql主从复制原理及配置
- MySQL 主从复制原理及搭建
- [转]MySQL主从复制原理介绍
- Mysql 主从复制实现原理