Mysql的复制原理和应用

这篇文章主要讲解了“MySQL的复制原理和应用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Mysql的复制原理和应用”吧!

创新互联是一家专业提供海城企业网站建设,专注与成都网站制作、成都做网站、html5、小程序制作等业务。10年已为海城众多企业、政府机构等服务。创新互联专业网络公司优惠进行中。

1.复制的概述

Mysql支持两种复制方式,基于行的复制和基于语句的复制。 这两种方式都是通过在主库上记录二进制日志、在备库重放日志的方式来实现异步的数据复制。

在同一时间点备库上的数据可能与主库存在不一致,并且无法保证主备之间的延迟。

复制通常不会增加主库的开销,主要是启用二进制日志带来的开销,但是出于备份或及时从崩溃中回复的目的,这点开销是必要的。

通过复制可以将读操作指向备库来获得更好读读扩展。写操作一般都是在主库上写。在一主库多备库读架构中,写操作会被执行多次,这时候整个系统读性能取决于写入最慢读那部分。

常见读复制方案:

  • 主 -备 -备:一个备库从主库copy数据,其余读备库从备库中copy数据。

  • 主- 备 :所有读备库从主库中copy数据。

2.复制解决读问题

  • 数据分布:将数据分布在不同读数据中心中。

  • 负载均衡:通过Mysql复制可以将读操作分布到多个服务器上,实现对密集型应用对优化,并且实现很方便,通过简单对代码修改就能实现基本对负载均衡。

  • 备份:复制是备份对补充,但复制不是备份也不能取消备份。

  • 高可用性和故障切换:避免单点失败,设计良好但故障切换

  • MySql 升级测试:保证读写的按预期实现。

3.复制如何工作

  • 3.1 在主库上把数据更改记录到二进制日志(Binary Log)中。

  • 3.2 备库将主库的日志复制到自己的中继日志(Relay Log)中。

  • 3.3 备库读取中继日志的事件,将其重放到备库数据之上。

这种复制架构实现了获取事件和重放事件的解耦,允许这两个过程异步进行。但是也限制了复制过程,最重要的就是主库上并发运行的查询在备库上只能串行化执行。因为只有一个SQL线程来重放中继日志中的事件。

感谢各位的阅读,以上就是“Mysql的复制原理和应用”的内容了,经过本文的学习后,相信大家对Mysql的复制原理和应用这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联,小编将为大家推送更多相关知识点的文章,欢迎关注!


当前名称:Mysql的复制原理和应用
浏览路径:http://pwwzsj.com/article/ipjgpp.html