redis主从复制
192.168.128.130:6379> INFO replication # 查看redis信息
# Replication
role:master # 角色
connected_slaves:0 # 从机数量
master_replid:094603faf952a58e702e5a5c907bbaf070d456db
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:0
second_repl_offset:-1
repl_backlog_active:0
repl_backlog_size:1048576
repl_backlog_first_byte_offset:0
repl_backlog_histlen:0
192.168.128.130:6379>
配置一台主机redis 两台从机redis![在这里插入图片描述](https://img-blog.csdnimg.cn/ff4972ff9edb4969b107b1efd2ab650b.png#pic_center)
设置第一台从机:
192.168.128.131:6379> SLAVEOF 192.168.128.130 6379
OK
192.168.128.131:6379> info replication
# Replication
role:slave # 角色:从机
master_host:192.168.128.130
master_port:6379
设置第二台从机:
192.168.128.132:6379> SLAVEOF 192.168.128.130 6379
OK
192.168.128.132:6379> info replication
# Replication
role:slave
master_host:192.168.128.130
master_port:6379
此时主机情况:
192.168.128.130:6379> info replication
# Replication
role:master
connected_slaves:2
slave0:ip=192.168.128.131,port=6379,state=online,offset=672,lag=1
slave1:ip=192.168.128.132,port=6379,state=online,offset=672,lag=0
master_replid:30dea13f3af703b6f3d6a7f865129fa7787677d6
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:672
second_repl_offset:-1
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:1
repl_backlog_histlen:672
读写分离
主机写 从机读 从机没有写权限
#主机 写
192.168.128.130:6379> set key1 v1
OK
#从机 读
192.168.128.131:6379> get key1
"v1"
#从机 写
192.168.128.131:6379> set key2 v2
(error) READONLY You can't write against a read only replica.
当主机断开连接,从机仍然连接主机,无法进行写操作
哨兵模式 (自动选举主机)
[root@chenyang01 chenconfig]# vim sentinel.conf
# sentinel monitor 被监控的名称 host port 1
sentinel monitor myredis 192.168.128.130 1
sentinel auth-pass myredis 123456 #配置密码
# 后面数字 1 ,代表主机挂了,slave投票看让谁成为主机,谁票数多,谁就是主机