⌛ 一文掌握:Redis7的主从复制

一、什么是Redis7的主从复制

Redis 的主从复制是一种数据复制机制,用于在多个 Redis 服务器之间实现数据同步。

  • master以写为主,Slave以读为主

  • 当master数据变化的时候,自动将新的数据异步同步到其它slave数据库

二、主从复制的四种模式

前置操作

①准三台centos虚拟机IP分别为: 129、131、131

②恢复Redis的配置为原始配置

cd /java/redis/redis-7.0.2/

cp redis.conf /root/myredis/redisNeW.conf

2.1 一主二仆

配置步骤

①配置 IP:129 的Redis

2.1.1 开启daemonize yes

2.1.2 注释掉bind 127.0.0.1

2.1.3 protected-mode no

2.1.4 指定端口

2.1.5 指定当前工作目录,dir

2.1.6. pid文件名字,pidfile

2.1.7 log文件名字,logfile

2.1.8 requirepass 123456

2.1.9 dump.rdb名字

② 配置 IP:131 的Redis

2.2.1 将129的redis配置拷贝到131里面

scp /root/myredis/redisNew.conf root@192.168.118.131:/root/myredis

修改文件名为redis131.conf

2.2.2 replicaof

2.2.3 指定端口 6381

2.2.4 配置主机密码 masterauth 123456

③配置 IP:132 的Redis

2.3.1 将129的redis配置拷贝到132里面

scp /root/myredis/redisNew.conf root@192.168.118.132:/root/myredis 修改文件名为redis132.conf

2.3.2 replicaof

2.3.3 指定端口 6382

2.3.4 配置主机密码 masterauth 123456

④具体演示

2.4.1启动129的Redis

cd /usr/local/redis/bin/

./redis-server /root/myredis/redisNew.conf

./redis-cli -a 123456

2.4.2启动131的Redis

cd /usr/local/redis/bin/

./redis-server /root/myredis/redis131.conf

./redis-cli -a 123456 -p 6381

2.4.3启动132的Redis

cd /usr/local/redis/bin/

./redis-server /root/myredis/redis132.conf

./redis-cli -a 123456 -p 6382

查看129.的日志

1.从机可以执行写命令吗?

不可以,从机只有读写命令的去哪里

2.主机shutdown后,从机会上位吗?

不会,会一直等待到主机启动

3.主机shutdown后,重启后主从关系还在吗?从机还能否顺利复制?

还在,能顺利复制

4.某台从机down后,master继续,从机重启后它能跟上大部队吗?

可以

2.2改换门庭

① 将131的主机配置去掉

②将132的主机配置去掉

③ 重启Redis,查看三个Redis的主从状态 info replication

info replication

三个Redis都为主机

③ 将131,132重新用命令设定主机129

slaveof 主库IP 主库端口

slaveof 192.168.118.129 6379

④ 主机新增数据,查看从机是否同步更新

需要注意的是,通过手动命令设置的主从关系,一旦重启就失效了,是临时命令

2.3 薪火相传

Redis的薪火相传是指上一个 Slave(从服务器)可以是下一个 slave 的 Master(主服务器),Slave 同样可以接收其他 slaves 的连接和同步请求,那么该 slave 作为了链条中下一个的 master,可以有效减轻 master 的写压力,去中心化降低风险。

实现步骤

①131配置主机129

./redis-server /root/myredis/redis131.conf

./redis-cli -a 123456 -p 6381

slaveof 192.168.118.129 6379

②132配置主机131

./redis-server /root/myredis/redis131.conf

./redis-cli -a 123456 -p 6381

slaveof 192.168.118.131 6381

③ 查看各个Redis的主从状态

info replication

④ 129主机新增数据查看各个从机数据

2.4自立为王

Redis的自立为王是指将当前的 slave(从服务器)数据库停止与其他 master(主服务器)数据库的同步关系,转成主数据库。执行该操作后,该 slave 数据库将不再接收其他 master 数据库的数据同步,而是自己成为一个独立的主数据库,可以接受其他 slave 数据库的连接和数据同步请求。简单来说就是从从机变为主机

实现步骤

SLAVEOF no one

三、总结

本文主要介绍了什么是主从复制,以及主从复制的四种模式分别为:一主二仆、薪火相传、改换门庭、自立为王的意思以及如何配置和效果演示。

相关推荐
MRSM_0111 小时前
若依微服务版(RuoYi-Cloud)快速上手
微服务·架构
hh.h.11 小时前
昇腾 CANN driver 层架构:软硬件接口的深度解析
架构·昇腾·driver·cann
国科安芯11 小时前
基于RISC-V架构的商业航天级MCU国产化技术路径与产业生态研究
网络·分布式·单片机·嵌入式硬件·架构·risc-v·安全性测试
掘金者阿豪11 小时前
一个 DISTINCT,让我在上线前多盯了三天,最后发现数据库自己就能处理
后端
砍材农夫12 小时前
物联网 基于netty核心实战-心跳保活机制
java·后端·物联网·struts·servlet·netty
小江的记录本12 小时前
【JVM虚拟机】垃圾回收GC:垃圾判定算法:引用计数法、可达性分析算法(附《思维导图》+《面试高频考点清单》)
java·jvm·后端·python·算法·spring·面试
fan654041412 小时前
GEO优化的技术底层:从RAG架构到信任链构建
人工智能·架构·信任链
名不经传的养虾人12 小时前
从0到1:企业级AI项目迭代日记 Vol.34|知识图谱接进来、异步嵌套修掉、依赖往回收——藏在修复里的三层架构演进
人工智能·架构·知识图谱·agent·ai编程·ai创业·企业ai
拓研C12 小时前
EM-Core自动驾驶类脑世界模型——全域客观认知底座(V1.0 正式版)
人工智能·机器学习·架构·机器人·自动驾驶·迁移学习·agi
国科安芯12 小时前
AS32S601商业航天级抗辐照MCU芯片:架构设计与技术特性研究
单片机·嵌入式硬件·算法·安全·架构·risc-v