redis主从架构宕机问题解决方法

主机宕机
  • 设置端口6379是主机,端口6380是从机,全部都正常启动
  • 验证在6379写入数据,在6380也能得到数据
  • 现在将6379主机停掉,模拟主机宕机
  • 由于主机宕机了,现在就要将6380从机设置为主机,使用slaveof no one命令,此时原来的从机变为主机也有了写的权限
  • 要是原来6379经过修复后,能够正常工作,先将6380主机数据进行保存持久化,将rdb文件,覆盖原主机6379的rdb文件,进行数据的统一。
  • 启动原来的主机6379
  • 将6380再次设置为从机
  • 先验证主机和从机数据是否一致
  • 在主机设置值,看能否同步到从机。
  • 测试从机是否还有写权限,作为从机之后,不再具有写权限了。
从机宕机

这个相对而言比较简单,在Redis中从库重新启动后会自动加入到主从架构中,自动完成同步数据;

总结

如果在主从复制架构中出现宕机的情况,需要分情况看:

  • 从Redis宕机
    1. 这个相对而言比较简单,在Redis中从库重新启动后会自动加入到主从架构中,自动完成同步数据;
    2. 问题? 如果从库在断开期间,主库的变化不大,从库再次启动后,主库依然会将所有的数据做RDB操作吗?还是增量更新?在Redis2.8版本后就实现了,主从断线后恢复的情况下实现增量复制。
  • 主Redis宕机,这个相对而言就会复杂一些,需要以下2步才能完成
    1. 第一步,在从数据库中执行SLAVEOFNO ONE命令,断开主从关系并且提升为主库继续服务;
    2. 第二步,将主库重新启动后,执行SLAVEOF命令,将其设置为其他库的从库,这时数据就能更新回来;
  • 这个手动完成恢复的过程其实是比较麻烦的并且容易出错,有没有好办法解决呢?当前有的,Redis提供的哨兵(sentinel)的功能。
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值