mysql relay log时间_MySQL主从同步时产生大量中继日志relay_log问题处理

项目上线后浏量很小, 设置主从同步后发现从库产生大量的中继日志, 特别是晚上基本每隔几分钟就会产生一个日志, 查看mysql从库日志发现大量例似下面的信息:2019-12-07 02:22:32 13406 [Warning] Storing MySQL user name or password information in the master info repository is not secure and is therefore not recommended. Please consider using the USER and PASSWORD connection options for START SLAVE; see the 'START SLAVE Syntax' in the MySQL Manual for more information.

看样子是从库重新连接造成的; 我这主要是因为两个配置项造成的:

slave_net_timeout

MySQL主从复制的时候, 当Master和Slave之间的网络中断,但是Master和Slave无法察觉的情况下(比如防火墙或者路由问题)。Slave会等待slave_net_timeout设置的秒数后,才能认为网络出现故障,然后才会重连并且追赶这段时间主库的数据。

master_heartbeat_period

设置复制心跳的周期,取值范围为0 到 4294967秒。精确度可以达到毫秒,最小的非0值是0.001秒。心跳信息由master在主机binlog日志文件在设定的间隔时间内没有收到新的事件时发出,以便slave知道master是否正常。

默认值为slave_net_timeout的值除以2,设置为0表示完全的禁用心跳。

如果心跳参数master_heartbeat_period大于slave_net_timeout, 且主库当前没有DML/DDL等操作, 就会导致从库每隔slave_net_timeout设置的时间后重新连接主库, 产生一条新的relay_log。

解决方法:在从库上将心跳参数设置成小于slave_net_timeout:stop slave;

change master to master_heartbeat_period = 150;

set global slave_net_timeout = 300;

start slave;

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值