一、基础配置
1、开启复制:创建主从复制有三种方式
配置中添加 slaveof {host} {ip}
启动时:redis-server --slaveof {host} {ip}
在redis中 :slaveof {host} {ip}
2、断开复制
命令 slaveof no one
3、切换主节点
slaveof {新host} {新ip}
二、复制过程
1、保存主节点信息
执行slaveof后,redis保存主节点信息,前台信息返回。
2、主从建立socket连接
从节点,通过每秒运行的定时任务,发现新的主节点后,通过socket建立网络连接。
从节点新开一个端口,专门用来收取主节点命令
3、发送ping命令
连接建立成功通过ping监测socket是否可用,主节点是否可以处理。如果不成功,重新第二步。
4、权限验证
主节点配置密码,需要验证
5、数据同步。
分全量复制和部分复制
6、持续复制
三、全量复制和部分复制
全量复制
用于初次复制场景。主节点执行bgsave,将RDB文件保存到本地,发送给从节点。
主节点记录复制偏移量,记录新增数据的位置。
RDB文件接受完成后,根据主节点的运行ID和复制偏移量,再次接受保存到复制缓冲区的新增数据。
如果从节点有历史数据,从节点清空历史数据