5.6.24-72.2-log Percona Server 主从延迟

来源:互联网 发布:幻灯片软件免费下载 编辑:程序博客网 时间:2024/06/18 09:51

问题描述:
一套监控的zabbix从库总是出现瞬间短暂的秒级延迟。
主从库版本都是Percona Server 5.6.24 ,软硬件配置基本相同。
从监控上看,硬件资源(cpu,内存,IO,网络)都没压力,而且有富余。
MySQL的监控上看,也没什么压力。就是短暂的主从延迟,虽然不会丢业务有影响,但看着不舒服。

问题排查:
mysql> show variables where variable_name in(‘slave_parallel_workers’,’read_only’,’sync_master_info’,
‘master_info_repository’,’relay_log_info_repository’,’slave_net_timeout’,’log_slave_updates’,
‘slave_compressed_protocol’,’sync_master_info’,’relay_log_purge’);
+—————————+——-+
| Variable_name | Value |
+—————————+——-+
| log_slave_updates | OFF |
| master_info_repository | FILE |
| read_only | ON |
| relay_log_info_repository | FILE |
| relay_log_purge | ON |
| slave_compressed_protocol | OFF |
| slave_net_timeout | 10 |
| slave_parallel_workers | 6 |
| sync_master_info | 10000 |
+—————————+——-+
9 rows in set (0.00 sec)

问题分析:
log_slave_updates 不需要做级联复制,关闭也没问题。
master_info_repository,relay_log_info_repository这两个参数如果设置成table,在这个版本中会导致内存溢出,所以设置成file。
read_only 从库设置为on,不用解释。
relay_log_purge 设置为on,自动删除relay log。
slave_compressed_protocol设置为off,不使用压缩协议。5.7.19中开启这个协议,可能会影响半同步。
slave_net_timeout设置为10,也算正常。
slave_parallel_workers设置为6.既然这套环境只有一个zabbix库,5.6中库级别的并行复制就没什么用了,还是关掉吧。

于是将slave_parallel_workers设置为0
stop slave ; set global slave_parallel_workers=0; start slave;

观察发现:
短暂的瞬间延迟消失了。
5.6中只有1个库的情况下开启 slave_parallel_workers=6
这里写图片描述

5.6中只有1个库的情况下关闭slave_parallel_workers=0
这里写图片描述

原创粉丝点击