主数据库:master
从数据库:slave
目标:实现slave数据库的数据从master的复制
原理:大致过程就是slave通过复制master上面的bin-log日志文件到本地,然后将其解析为可执行query语句在本地数据库。
该过程主要有三个线程来完成:1.master的IO线程,2、slave的IO线程和SQL线程首先slave向master发出请求,
当master的IO线程负责将data数据转换为bin-log日志文件,slave的IO线程链接到master上后会从指定的日志文件
中的某个位置开始将以后的文件进行复制,此时日志文件会被锁上,但是锁的时间可以忽略不计,返回到slave从库中的relay log文件中,SQL引擎检测到relay log发生变化后,进行解析将其转化成可执行的SQL语句插入到数据库中。