翼度科技»论坛 编程开发 mysql 查看内容

MySQL 主从复制

6

主题

6

帖子

18

积分

新手上路

Rank: 1

积分
18
概述

在主从复制中,一般有一个主数据库(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】 我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

举报 回复 使用道具