Redis的复制

Redis的复制(master/Slave)

1、redis的复制是什么?

redis的复制就是我们所说的主从复制,主机数据更新后根据配置和策略,自动同步到备机的master/slave机制,Master以写为主,slave以读为主

2、redis的复制作用

  • 读写分离
  • 容灾恢复

3、如何实现Redis的主从复制

1、配置从库不配置主库(默认自己就是主库)

2、从库配置:slaveof主库IP主库端口(或者使用slaveof命令)

  • 每次与master断开之后,都需要重新连接,除非你配置redis.conf文件
  • info replication

3、修改配置文件细节操作:

  • 拷贝多个redis.conf文件
  • 开启daemonize yes
  • Pid文件名字
  • 指定端口
  • Log文件名字
  • Dump.rdb名字
port 6379
daemonize yes
pidfile /var/run/redis_6379.pid
logfile "6379.log"
dbfilename dump6379.rdb
从节点需要加
slaveof <主机IP地址> <主机端口号port>

4、常用的3种主从复制

一主二仆(master(1台)slave(2台))

在这里插入图片描述

在这里插入图片描述

主从问题:

1 切入点问题?slave1、slave2是从头开始复制还是从切入点开始复制?比如从k4进来,那之前的123是否也可以复制

答:从头开始复制,接入主机后(变成从机),接入之前的数据也会复制到从机中

2 从机是否可以写?set可否?

答:(replica-read-only yes)默认从机为只读模式,可以设置但是不建议把从机设置成可读写的模式。

3 主机shutdown后情况如何?从机是上位还是原地待命

答:从机原地待命

4 主机又回来了后,主机新增记录,从机还能否顺利复制?

答:主机回来之后,主机新增记录,从机能顺利复制。

5 其中一台从机down后情况如何?依照原有它能跟上大部队吗?

答:一台从机down掉后,重新连上主机后它还是能复制主机中的数据,包括down掉之后新添加的数据,和之前的数据

薪火相传

在这里插入图片描述

当中间的slave从机down掉之后master就没有从机了

上一个slave可以是下一个slave的master,slave同样可以接收其他slave的连接和同步请求,那么该slave作为了链条中下一个节点的master,可以有效的减轻master的写压力

中途变更转向:会清除之前的数据,重新建立拷贝最新slaveof 新主库IP 新主库端口

反客为主:slaveof no one 使当前数据库停止与其他数据库的同步,转成主数据库

4、Redis主从复制原理

Slave启动成功连接到master后会发送一个sync命令Master接到命令启动后台的存盘进程,同时收集所有接收到的用于修改数据集的命令,在后台进程执行完毕之后,master将传送整个数据文件到slave,以完成一次完全同步。

全量复制:而slave服务在接收到数据库文件数据后,将其存盘并加载到内存中。

增量复制:master 继续将新的所有收集到的修改命令依次传给slave,完成同步,但是只要是重新连接master,一次完全同步(全量复制)将被自动执行

5、哨兵模式(sentinel)

在这里插入图片描述

1、哨兵模式是什么

反客为主的自动版,能够在后台监控主机是否故障,如果故障了跟据投票数自动将从库转换为主库

使用步骤:

1、编写哨兵(sentinel)的配置文件,此处使用三个哨兵来演示哨兵模式的复制,所以需要编写三个配置文件



#sentinel-26379.conf
#哨兵的端口
port 26379 
#是否以后台方式运行哨兵
daemonize yes 
#哨兵的配置文件
logfile "26379.log" 
#哨兵最核心的配置
sentinel monitor mymaster 192.168.92.128   6379 2
#sentinel monitor <主节点名称> <主节点IP> <主节点端口> <客观下线需要的票数>

相关哨兵的详细资料:

http://www.redis.cn/articles/20181020001.html

entinel monitor <主节点名称> <主节点IP> <主节点端口> <客观下线需要的票数>


相关哨兵的详细资料:

http://www.redis.cn/articles/20181020001.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值