Redis的复制(Master/Slave)
主机数据更新后根据配置和策略自动同步到备机的master/slaver机制,Master以写为主,Slave以读为主
解决问题:读写分离,容灾错误
主要几种模式:
一主多仆,薪火相传,反客为主,哨兵模式(最为常用)
配置过程
1.配从(库)不配主(库)
基本过程
redis-server /redis.conf
redis-cli -p 端口号
info replication #查看信息
SLAVEOF IP:端口
1.一主多仆:每个slave使用命令:
LAVEOF IP:端口
当master挂掉时,主从关系不变
2.薪火相传:类似于链表结构,每个字slave 使用命令:
LAVEOF IP:端口
3.反客为主:将slave转为master
需要变为master的redis :SLAVEOF NO ONE
之前的slave:SLAVEOF IP:上面的端口
哨兵模式:使用哨兵去监控redis的master,如果master挂掉了,就使用投票机制。选择出新的master
重点:如果master从新启动,他不会变为master,而是变成了slave
类似于反客为主的自动版,能够后台监控主机是否故障,如果故障了根据投票数自动将从库转换为主库
sentinel monitor 被监控数据库名字(自己起名字) 127.0.0.1 6379 1 #设置sentinel配置文件的内容,上面最后一个数字1,表示主机挂掉后salve投票看让谁接替成为主机,得票数多少后成为主机
redis-sentinel /sentinel.conf #加载配置文件