1    主机宕机

1、  设置端口6379是主机,端口6380是从机,全部都正常启动

2、  验证在6379写入数据,在6380也能得到数据

redis 主从 数据丢失 redis主从模式主挂掉_置数据

redis 主从 数据丢失 redis主从模式主挂掉_置数据_02

3、  现在将6379主机停掉,模拟主机宕机

redis 主从 数据丢失 redis主从模式主挂掉_置数据_03

4、  由于主机宕机了,现在就要将6380从机设置为主机,使用slaveof no one命令,此时原来的从机变为

       主机也用了写的权限

redis 主从 数据丢失 redis主从模式主挂掉_自动完成_04

5、  要是原来6379经过修复后,能够正常工作,先将6380主机数据进行保存持久化,将rdb文件,覆盖原主机6379的rdb文件,进行数据的统一。

redis 主从 数据丢失 redis主从模式主挂掉_自动完成_05

6、  启动原来的主机6379

redis 主从 数据丢失 redis主从模式主挂掉_置数据_06

7、  将6380再次设置为从机

redis 主从 数据丢失 redis主从模式主挂掉_自动完成_07

8、  先验证主机和从机数据是否一致

主机:

redis 主从 数据丢失 redis主从模式主挂掉_数据_08

从机:

redis 主从 数据丢失 redis主从模式主挂掉_置数据_09

9、  在主机设置值,看能否同步到从机。

主机设置数据

redis 主从 数据丢失 redis主从模式主挂掉_置数据_10

从机得到数据

redis 主从 数据丢失 redis主从模式主挂掉_置数据_11

redis 主从 数据丢失 redis主从模式主挂掉_数据_12

10、 测试从机是否还有写权限

redis 主从 数据丢失 redis主从模式主挂掉_redis 主从 数据丢失_13

作为从机之后,不再具有写权限了。

1.2    从机宕机

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