MySQL主从复制的实现原理以及三线程两日志

ljpqzluj.png

数据更新

首先由master节点也就是主节点更新数据,简单来说就是执行一些增删改等。

写入二进制日志

主服务器将所有的数据变更操作(INSERT、UPDATE、DELETE 等)记录到二进制日志中。这些日志以二进制格式保存,其中包括数据的修改语句以及相关的元数据。二进制日志是主从复制的基础,非常重要,务必检查是否开启二进制日志(默认是开启的)。

dump线程的生成

dump线程其主要是为了给Slave节点的io线程推送数据,也就是说为每个Slave的I/O Thread启动一个dump线程。

io线程的生成

从服务器上运行的一个线程,负责连接到主服务器,并请求获取主服务器上的二进制日志。io线程将获取到的二进制日志写入从服务器上的中继日志。

中继日志

从服务器上有一个中继日志,用于存储主服务器上的二进制日志的副本。io线程将从主服务器接收到的二进制日志写入中继日志。SQL线程会读取中继日志中的日志事件,并在从服务器上执行相应的操作。

SQL线程的生成

SQL线程是在从服务器上运行的另一个线程,负责读取中继日志中的日志事件,并在从服务器上执行相应的操作。SQL线程会逐条读取中继日志中的日志事件,解析其中的SQL语句,并在从服务器上执行这些SQL语句,以反映主服务器上的数据变更。

温馨提示: 本文最后更新于2024-06-04 01:36:44,若有错误或已失效,请在下方 留言或联系 站长
有问题及时联系站长,QQ:1240555208
更多优质资源在QQ群里,可以进群领取:467392290~
© 版权声明
THE END
点赞6 分享
及时反馈~ 抢沙发

请登录后发表评论

    暂无评论内容