主从复制的流程解释:
执行change master to那一刻,会将主库信息永久保存到master.info里,而后我们又执行了一个start slave,这个命令的作用就是让两个线程io和sql开始干活,首先干活的是io线程,io线程从master.info里拿到主库信息与主库进行连接,当主库收到从库io线程请求后会通过主库中的DUMP_T线程与从库的io线程建立真正的互通互联,
然后io线程会询问主库的DUMP_T,有没有比0001更新的日志呀?DUMP_T如果查到有新的日志就会截取并传给io线程,
io线程讲接收到的新日志存到网路的tcpip缓存中并返回主库一个ACK值,此时主库的DUMP_T就干完活了
然后io线程会做一下几件事:
1更新master.info日志
2把tcpip里的日志写入到磁盘上,此时io线程的活就干完了
接下来sql线程开始干活了:
1先读取relay-log看看上次执行二进制的位置点
2使用位置点在数据磁盘里找到开始位置开始进行数据回放
3回放完成后再次更新relay-log里的信信。

浙公网安备 33010602011771号