MySQL 主从复制
概述在主从复制中,一般有一个主数据库(Master)和一个或多个从数据库(Slave),主数据库负责接收和处理写操作,从数据库复制主数据库的日志文件,将写操作在自身的数据库重演,从而实现数据的同步
复制类型
[*]STATEMENT:把主数据库执行的 sql 复制到从数据库,是默认类型
[*]ROW:直接把数据行复制过去
[*]MIXED:默认复制 sql 语句,如果发现无法精确复制,就会复制行数据
工作过程
[*]主库数据更新,写入二进制日志文件
[*]从库监听到主库的二进制日志文件发生改变,开启 I/O 线程向主库请求二进制日志记录;
[*]主库为每个 I/O 线程开启 dump 线程,向从库发送二进制日志记录
[*]从库的 I/O 线程将主库的二进制日志记录保存到本地的中继日志
[*]从库启动 SQL 线程从中继日志读取二进制日志记录,在本地重新执行,使数据和主库保持一致
[*]I/O 线程和 SQL 线程进入睡眠状态,等待下一次被唤醒
同步类型
[*]异步复制:主库执行完事务,立即将结果返回客户端,并不关心从库是否已经接收并处理。此时如果主库挂掉,而从库又未完成同步,会导致数据不一致,MySQL 默认采用此类型
[*]全同步复制:主库执行完事务,所有的从库也都执行了该事务,完成数据同步,才将结果返回客户端,性能会收到一定影响
[*]半同步复制:在异步复制的基础上,确保主库返回结果前,至少有一个从库已经收到该事务并记录到中继日志,但并不保证执行
实例配置
待补充
来源:https://www.cnblogs.com/Yee-Q/p/18115963
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!
页:
[1]