借鉴:https://zhuanlan.zhihu.com/p/651625709
 https://www.jb51.net/article/258847.htm
一:Mysql主从复制原理
MySQL的复制原理分三步
1.在主库上把数据更改,记录到二进制日志(Binary Log)中。
2.从库将主库上的日志复制到自己的中继日志(Relay Log)中。
3.备库读取中继日志中的事件,将其重放到备库数据之上。

二:三种复制(异步、同步、半同步)
1.异步
异步复制模式,主库在执行完客户端提交的事务后,只要将执行逻辑写入到binlog后,就立即返回给客户端,并不关心从库是否执行成功

2.同步
当主库执行完客户端提交的事务后,需要等到所有从库也都执行完这一事务后,才返回给客户端执行成功。因为要等到所有从库都执行完,执行过程中会被阻塞,等待返回结果,所以性能上会有很严重的影响。

3.半同步
半同步复制模式,可以说是介于异步和同步之间的一种复制模式,主库在执行完客户端提交的事务后,要等待至少一个从库接收到binlog并将数据写入到relay log中才返回给客户端成功结果。







![[ROS2] --- 手动编写一个节点](https://img-blog.csdnimg.cn/direct/e347903039954c7baa043114fbc28ec1.png)











