redis-主从复制

redis主从复制

是什么

主机数据更新后裔根据配置和策略,自动同步到备机的master/slaver机制,Master以写为主,slave以读为主

能干嘛

  • 读写分离,性能扩展

  • 容灾快速恢复

一般为一主多从配置

集群的概念

多个一主多从的服务器集群:

配置主从复制

要求:一主两从

如何进行配置:

image-20221123113616158

启动

  • 启动三个服务器

  • 连接三个服务器的终端

    image-20221123114949440

    • 还未进行主从配置,查看每个服务器的配置信息,均显示为master服务器

$image-20221123115047847

image-20221123115158593

如何配置主从服务器
在从机的主机上输入一下命令:

slaveof ip地址 +端口号

image-20221123115502421

在主机中再次输入 info replication 可以看到有一个从机服务器的配置信息

image-20221123115451105

流程示意

  • 在主机上进行写操作

image-20221123120014926

  • 在从机上查看是否同步
    • 6382从机情况

image-20221123120131950

​ 6383从机情况

image-20221123120143323

突发情况分析

  • 首先把6383从服务器挂掉

    image-20221123120406709

  • 在主服务器查看是否挂掉

经查看服务器的确挂掉

  • 在主服务器进行添加操作

  • 6382从服务肯定能同步刚刚添加的两个key-value值如图所示:

*考虑的问题

重新启动6383,会发生什么效果: 会自己变为主服务器

image-20221123121034264

那么再次把6383服务器添加到6381主服务器中

image-20221123121228864

** 当某个从服务器挂掉以后,在重新启动以后,并不会把这个从服务自动加入到主服务中,需要自己手动再把这个从服务器重新加入到这个主服务器中来**

一旦重新 加入到主服务器中,会 自动同步主服务所有的写入值的操作

image-20221123121145267

突发情况2:主服务挂掉

image-20221123121504176

  • 查看两个从服务器的配置信息:均显示两个重复器还是配置在6381的从服务器,两个从服务器并没有上位。

    image-20221123121611995

  • 重新启动主服务:仍然是两个从服务器的主服务器。

image-20221123121732801

主从复制的原理

薪火相传

image-20221123143757310

实现策略

首先第一步使用6381服务器作为主服务,6382作为6381的从服务器,6383作为6382的服务器,形成薪火相传。

image-20221123144100831

6381的从服务器只有一台:6382

反客为主

当一个服务器宕机时:后面的slave可以立即为master,后面的slave不用做任何修改

用slaveof no one 将从机变为主机

image-20221123145408240

posted @ 2022-11-23 15:02  wiselee/  阅读(18)  评论(0编辑  收藏  举报