异步复制、5.1.7以上版本分为异步复制和半同步
三个线程:
slave两个线程:SQL线程和IO线程
master端IO线程
过程:
slave从master获取binlog日志,顺序执行日志中记录的各种sql操作
1、slave端的IO连接master,从指定的pos节点开始复制内容
2、master端收到请求,通知IO线程(复制工作)据请求读取指定binlog的pos节点后的信息
3、slave端IO接收到master返回信息后,将接收到binlog日志内容依次写入到slave端relaylog文件,读取master的binlog文件名和pos位置记录到master-info文件中
4、slave端SQL线程在检测relaylog文件中新增内容,解析文件内容,还原为master端真实执行的sql语句,按顺序之心
注意:
对从库数据进行修改,如从库正在执行主库的bin-log,出错停止同步
双主、互为主从,修改不冲突 可以工作良好
环形配置:任意节点修改可同步到所有节点