mysql relaylog 慢_Mysql解决主从慢同步问题

Mysql解决主从慢同步问题

一.简介

一般主从复制,有三个线程参与,都是单线程:Binlog Dump(主) ----->IO Thread (从) -----> SQL Thread(从)。复制出现延迟一般出在两个地方

1)SQL线程忙不过来(可能需要应用数据量较大,可能和从库本身的一些操作有锁和资源的冲突;主库可以并发写,SQL线程不可以;一个大的sql语句导致执行很慢;)

2)网络抖动导致IO线程复制延迟(次要原因)。

SQL thread在执行IO thread dump下来的relay log的时间差。大家都知道relay log中event记录的时间戳是主库上的时间戳,而SQL thread的时间戳是从库上的,也就是说,如果主库和从库的时间是一致的,那么这个SBM代表的确实是从库延后主库的一个时间差。但是如果主库和从库的时间不是一致的,那么这个SBM的意义就基本不存在了。将主库时间调快1小时,那从库默认慢一小时。

为何有延迟

1.网络延迟

若主从之间网络延迟到,会造成sql线程无法实时将主的binlog日志复制过来。

2.机器性能差

若主用的固态硬盘,从用的机械硬盘,那读取速度自然不一样,会造成主写入很快,从在慢慢读取,这样就不适合读写分离了。

3.高负载

若从机器还安装了别的服务,用top可以看出是否有其它进程在占用资源,导致从性能下降。

4.磁盘负载

用iotop可以看到当前磁盘的负载,若正在复制某些东西,会导致将主的binlog复制过来了,但写入到从mysql中会很慢

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值