mysql delaybin_[MySQL Delay]生产环节主从延迟的问题解决过程记录: sync_binlog=0

接到山姆大叔的电话,主从延迟半个小时了

Seconds_Behind_Master: 7600

1, 检查show full processlist; 没有任何slow的dml sql语句。

2, 检查innodb status,没有任何lock的块。

3, 检查cacti,里面cpu usage从4%上升到了15%,Percona InnoDB I/O GT 从90%降低到了50%%。

4, 检查当前connections,发现处于业务低峰期。

5, 尝试我重启了下mysql server,结果Seconds_Behind_Master还是不停的增长。

6,最后去检查写入参数看下:

mysql> show variables like '%commit%';

+--------------------------------+-------+

| Variable_name | Value |

+--------------------------------+-------+

| autocommit | ON |

| innodb_commit_concurrency | 0 |

| innodb_flush_log_at_trx_commit | 0 |

+--------------------------------+-------+

3 rows in set (0.00 sec)

commit为0,已经算是最快的了。

再看binlog

mysql> show variables like 'sync_binlog';

+---------------+-------+

| Variable_name | Value |

+---------------+-------+

| sync_binlog | 2 |+---------------+-------+

1 row in set (0.00 sec)

那么改成0试试看吧。

set globalsync_binlog=0;

执行完后,从Seconds_Behind_Master: 9200变成了Seconds_Behind_Master: 8791,开始追了。

又过了3分钟,已经是Seconds_Behind_Master: 0了。

虽然问题解决了,但是主要问题不在sysn_binlog,估计是磁盘有问题了,不然不可能在晚上业务低峰期,会主从delay的。平常白天业务高峰期都没有主从delay过,把疑惑发给山姆大叔,让他去找system administrator吧,去check下disk的问题。

分享到:

18e900b8666ce6f233d25ec02f95ee59.png

72dd548719f0ace4d5f9bca64e1d7715.png

2014-01-20 06:18

浏览 257

评论

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值