前言:
首先MySQL主从复制方式有多种,包括 binlog、GTID等,这里基于 binlog 的形式,解析异步主从复制流程
首先通过下面命令查看全部 binlog 日志文件
show binary logs;
binlog 日志文件如下:
然后查看其中一个文件的内容
show binlog events in 'mysql-bin.000003';
mysql-bin.000003 文件内容如下:
这个文件中会有一个 标记点 pos,用于记录从库同步的位置,这里从库会将同步的位置,包括文件(表示同步到哪一个文件了)定位和这个 pos 标记(表示当前文件同步到哪一个位置了)发送到主库,然后主库根据这个标记,将标记之后的全部记录发送到从库,从库接收会先存到一个中继日志,然后会有一个单独的线程,从中继日志中拿到对应的记录,将记录写入到从库中。