mysql主从同步简单理解

MySQL主从同步的简单理解

许多大型网站为了减轻海量用户对于服务器并发访问量的性能问题,会使用很多解决的方案,

数据库主从分离,就是目前主流的一种解决手段。

想一下每个用户都通过控制层业务层调用服务器数据,用户量小还好说,用户量大的话轻则用户体验极差,重则数据库崩溃甚至数据丢失,那真的就是很严重的事情了。

如何解决,解决方案之一就是主从分离。

主从那长话短说就是,一台服务器我处理不了就用几台服务器咯,

但是这些服务器是有主次之分以及职责划分的。

  • 将我们对数据库的读写操作分别放到不同的服务器集群中运行。
  • 一般主服务器负责写入,从服务器负责读取。
  • 主服务器做的操作同步到从服务器中。
  • 主从配置只需要配置数据库,无需修改业务代码。

那么来讲一下具体的工作原理,如图:

mysql主从同步简单理解_第1张图片

登录后复制

  1. 主服务器(Master)将数据信息(Data changes)存储到二进制日志中(Binary log)
  2. 从服务器开启一个I/O线程(I/O thread),用于连接主从服务器,并拷贝/同步主服务器的操作。
  3. 将这些操作同步到中介日志中(Relay log)
  4. 从服务器重复主服务器的操作(Replay / Read)

从服务器执行主服务器的同步操作也要一步一步的来,可以类比生产者消费者案例,

所以需要同步到从服务器日志中一步一步的同步执行。

你可能感兴趣的:(架构,java)