快速,持续,稳定,傻瓜式
支持Mysql,Sqlserver数据同步

MySQL主从同步延迟原因及解决办法

请联系QQ:1793040 索取软件

背景:

阅读新闻

[日期:2017-06-11] 来源:Linux社区
作者:Linux
[字体:大 中 小]

MySQL主从延迟原因以及解决方案:谈到MySQL数据库主从同步延迟原理,得从mysql的数据库主从复制原理说起,mysql的主从复制都是单线程的操作(mysql5.6版本之前),主库对所有DDL和DML产生binlog,binlog是顺序写,所以效率很高。

slave的Slave_IO_Running线程会到主库取日志,效率会比较高,slave的Slave_SQL_Running线程将主库的DDL和DML操作都在slave实施。DML和DDL的IO操作是随机的,不是顺序的,因此成本会很高,还可能是slave上的其他查询产生lock争用,由于Slave_SQL_Running也是单线程的,所以一个DDL卡主了,需要执行10分钟,那么所有之后的DDL会等待这个DDL执行完才会继续执行,这就导致了延时。有朋友会说:“主库上那个相同的DDL也需要执行10分,为什么slave会延时?”,答案是master可以并发,Slave_SQL_Running线程却不可以。

2.MySQL数据库主从同步延迟是怎么产生的。

当主库的TPS并发较高时,产生的DDL数量超过slave一个sql线程所能承受的范围,那么延时就产生了,当然还有就是可能与slave的大型query语句产生了锁等待。

3.MySQL数据库主从同步延迟解决方案

(1)最简单的减少slave同步延时的方案就是在架构上做优化,尽量让主库的DDL快速执行。还有就是主库是写,对数据安全性较高,比如sync_binlog=1,innodb_flush_log_at_trx_commit=1 之类的设置,而slave则不需要这么高的数据安全,完全可以讲sync_binlog设置为0或者关闭binlog,innodb_flushlog也可以设置为0来提高sql的执行效率。

(2)另外就是使用比主库更好的硬件设备作为slave。

就是把,一台从服务器当度作为备份使用,而不提供查询,那边他的负载下来了,执行relay log里面的SQL效率自然就高了。

(3)增加从服务器喽,这个目的还是分散读的压力,从而降低服务器负载。

4.MySQL数据库主从同步延迟产生的因素。

1.网络延迟 2.master负载 3.slave负载 一般的做法是,使用多台slave来分摊读请求,再从这些slave中取一台专用的服务器,只作为备份用,不进行其他任何操作,就能相对最大限度地达到’实时’的要求了

另外,再介绍2个可以减少延迟的参数 –slave-net-timeout=seconds 参数含义:当slave从主数据库读取log数据失败后,等待多久重新建立连接并获取数据 slave_net_timeout单位为秒 默认设置为 3600秒 slave_net_timeout 3600 –master-connect-retry=seconds 参数含义:当重新建立主从连接时,如果连接建立失败,间隔多久后重试。 master-connect-retry单位为秒 默认设置为 60秒 通常配置以上2个参数可以减少网络问题导致的主从数据同步延迟。

MySQL5.6主从复制搭建基于日志(binlog) http://www.linuxidc.com/Linux/2017-05/144162.htm

MySQL主从配置图文详解 http://www.linuxidc.com/Linux/2017-04/143211.htm

Linux环境下MySQL数据库主从同步配置 http://www.linuxidc.com/Linux/2017-04/143017.htm

本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-06/144585.htm

linux

Oracle 12cr2 数据库之间传输表,分区或子分区
Oracle数据库启动和关闭

相关资讯
MySQL主从同步 MySQL主从同步延迟
  • MySQL服务器主从数据库同步配置 (02/14/2019 11:51:27)
  • MySQL主从同步错误恢复 (11/21/2018 08:09:03)
  • CentOS 7上MySQL主从同步的实现 (08/13/2018 10:39:31)
  • CentOS 7.4下MySQL+Amoeba做主从同 (12/02/2018 20:08:20)
  • Ubuntu下MySQL主从同步配置步骤 (08/19/2018 15:16:46)
  • MySQL5.7 搭建主从同步 (07/23/2018 08:25:41)

本文评论
  查看全部评论 (0)

表情:表情
姓名:

字数



   
   

评论声明

  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款

最新资讯
  • MySQL索引优化深入
  • MySQL锁与事务隔离级别
  • Java的CAS乐观锁原理解析
  • Ant Design v3.26.10 发布,企业级UI设计语
  • 再见Windows!另一个公司计划大规模迁移到
  • MyPaint 2.0 发布,开源绘图工具
  • Vulkan 1.2.133 发布,新扩展VK_KHR_shader
  • Q4OS 4.0 测试版发布,基于Debian ‘
  • MX Linux 19.1 发布,基于Debian的出色的
  • Wine 5.2具有更好的处理空显示驱动程序,支

相关推荐

咨询软件
 
QQ在线咨询
售前咨询热线
QQ1793040