6、主从复制

该栏目会系统的介绍 Redis 的知识体系,共分为相关概念、操作指令、主从复制等模块



简介

1、概述

  • :主服务器数据更新后根据配置和策略,自动同步到从服务器的机制,主服务器以写为主,从服务器以读为主
    主从复制

2、优点

  • 读写分离,性能扩展
  • 容灾快速恢复

3、复制原理

  • slave 启动成功连接到master后发送一个同步命令
  • slave 收到命令,启动后台的同步进程,将所有接收到的修改数据集命令, 在后台进程执行完毕之后,master 将传送整个数据文件到 slave
  • slave 服务在接收到数据库文件数据后,将其存盘并加载到内存中
  • 每次 master 进行写操作之后,会发送给 slave 进行数据同步
    复制原理

常用模式

1、一主二仆

  • :master 写入数据后会同步给 slaves,master 宕机后 slaves 不会成为 master

2、薪火相传

  • :上一个 slave 可以是下一个 slave 的 master,slave 同样可以接收其他 slaves 的连接和同步请求, 可以有效减轻 master 的写压力,去中心化降低风险

3、哨兵模式

  • :监控 master 是否故障,如果故障了根据投票数自动将 slaves 转换为主库

相关配置

# 公共配置文件 redis.conf
daemonize yes   # 开启后台启动
appendonly no  # 关闭aof同步

# 6379主机配置
include /redis/redis.conf   # 引入公共配置
pidfile /redis/pids/redis_6379.pid  # 设置PID文件
port 6379   # 设置端口
dbfilename dump6379.rdb  # 设置rdb文件名称

# 6380从机配置
include /redis/redis.conf   # 引入公共配置
pidfile /redis/pids/redis_6380.pid  # 设置PID文件
port 6380   # 设置端口
dbfilename dump6380.rdb  # 设置rdb文件名称
slaveof 127.0.0.1 6379  # 配置主机信息
slave-priority:100  # 优先级

# 6381从机配置
include /redis/redis.conf   # 引入公共配置
pidfile /redis/pids/redis_6381.pid  # 设置PID文件
port 6381   # 设置端口
dbfilename dump6381.rdb  # 设置rdb文件名称
slaveof 127.0.0.1 6379  # 配置主机信息
slave-priority:90  # 优先级

# 哨兵配置(sentinel.conf)
sentinel monitor mymaster 127.0.0.1 6379 1

####################################################

# 1、启动三台redis
# 2、查看主从复制信息:info replication
# 3、启动哨兵:redis-sentinel /redis/sentinel.conf
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值