码迷,mamicode.com
首页 > 其他好文 > 详细

redis主从同步,显示master_link_status:down的解决思路

时间:2020-07-27 09:58:50      阅读:112      评论:0      收藏:0      [点我收藏+]

标签:客户   怎么   with   参数配置   code   命令   syn   思路   cti   

当通过info replication指令查看到master的连接状态为:master_link_status:down时。肯定要先瞅瞅日志。
下面是两个可能造成master连接状态为down的日志信息:

  • 日志中有大量的I/O error trying to sync with MASTER:connection lost字样。
  • 日志持续输出Unable to AUTH to MASTER: -ERR Client sent AUTH, but no password is set,这个翻译一下就知道咯,和master的授权密码不匹配。

下面就单独说一下第一个错误日志信息怎么解决。
通过资料发现,是client-output-buffer-limit这个参数配置不当造成的。配置文件中关于此配置的注释如下:
一旦达到硬限制或者达到软限制并保持达到指定的秒数(连续)。客户端将立即断开连接,比如硬限制是32MB软限制是16MB,时间是10s,如果输出缓冲区的大小达到32MB,客户端将立即断开连接,或者客户端达到16MB并持续时间为10s,客户端同样会断开连接。
关于client-output-buffer-limit参数的配置格式在配置文件注释中也有示例,如下:

client-output-buffer-limit <class> <hard limit> <soft limit> <soft seconds>

注:该配置项默认存在配置文件中,对于不同的版本,class对应的可能不一样,可能是slave,可能是replication,不用过多纠结这个。

这里修改这个限制有两种方式:
1.修改配置文件 client-output-buffer-limit,要重启redis生效。
2.在redis命令行中config set client-output-buffer-limit ‘slave 512mb 128mb 120’但是下次重启redis会失效。

所以最好的方法就是做了步骤1之后再把步骤2给做了。

redis主从同步,显示master_link_status:down的解决思路

标签:客户   怎么   with   参数配置   code   命令   syn   思路   cti   

原文地址:https://blog.51cto.com/14227204/2513486

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!