三. Redis 主从复制

时间:2021-12-19 16:10:38

特点

1. Master可以拥有多个Slave

2. 多个Slave除可以连接一个Master外,还可以连接多个Salve(避免Master挂掉不能同步,当Master挂掉,其中一个Slave会立即变成Master)

3. 主从同步的时候不会阻塞Master,同步的时候Master仍然可以继续处理Client请求

4. 提高伸缩性

 

主从同步原理

1. Slave向Master发起建立连接,发起同步请求命令

2. Master会启动一个后台,将数据快照保存到文件中,同时Master主进程会收集新的写命令并缓存

3. 后台完成保存之后,会将此文件发给Slave

4. Slave将此文件保存到硬盘

 

主从复制步骤

1. 启动Master服务器

2. 使用Vi编辑器修改 Slave 的 redis.conf文件, 找到 slaveof 所在的行,设置为 slaveof 192.168.221.128 6379 (表示Master服务器的ip和端口)

3. 如果 Master 服务器设置有密码,需要 找到 masterauth 所在的行,设置为 masterauth hexu (表示Master服务器的密码)

4. 启动Slave服务器

 

问题:如何查看哪台是Master,哪台是Slave?

答:通过 info 命令的反馈,

# Replication
role:slave

master_link_status:up 表示正在连接Master,所以这台是 Salve

 

 

可以看到,当 db.StringSet 到 Master库的时候,Slave库也得到了数据,主从复制成功

三. Redis 主从复制