使用背景:在网联网不断发展的时代,人们对数据的使用也不断的增加,对于用户的请求不断的增加,数据库的读写操作就特别大,就会导致服务器受不了那么多用户的请求和对数据的操作,导致服务器负荷,相应的用户的等待时间就会特别长,给用户的体验特别差,而主从同步就很好的解决的这种并发的问题。
主从同步:简单来说就是使用两台服务器,分别处理用户的读和写的操作,从而实现了读写分离。由于从服务器同步的主服务器上的数据,所以主从同步极大的保证了数据的安全。
基本原理:主从同步,分为两台服务器
如图:Master为主服务器,Slave为从服务器
1. 主服务器(Master)对数据的操作,对事务更新完成之前,mysql将以串行的形式将日志以2进制的形式写入到Binary log日志中(即二进制日志事件),在事务写完以后,Master通知存储引擎,提交事务.
2.提交事务后,Slave服务器,将Master的Binary log日志拷贝到自己的Relay log中(即Slave开启I/O thread 读取Master中的Binary log,然后写入到Slave中的Relay log 中)
3.SOL thread线程将Relay log中的日志读取,重做数据,达到将Master中的数据改变同步到Slave中.
所以: