Redis主从复制
日常生活中查询数据占大多数,所以主要是查询数据。
主从复制,就是主机数据更新后根据配置策略,自动同步都从机,主机只可以写数据,从机只可以查数据。Master为主,Slave为从,有一个主,多个从。
用处
》读写分离,性能扩展
》容灾快速回复
配从不配主(好比,小弟认大哥:都是小弟说要跟着大哥,没有大哥说你当我小弟吧)
单机模拟
1、拷贝一个公共的redis.conf,用来include
2、配置私有的配置
具体步骤:
cd /myredis
vim myredis6379.conf
编辑如下内容:
include /myredis/redis.conf
port 6379
pidfile /var/run/redis_6379.pid
dbfilename dump6379.rdb
cp myredis6379.conf myredis6380.conf
把6379改为6380
相同操作在增加一个6381。
添加完配置文件。启动服务,然后登陆客户端。
主机登陆,并打印信息,此时显示从机,当有机器认它为主机时,他就是主机了。
redis-server /myredis/redis6379.conf
redis-cli -p 6379
info replication
启动从机,并认主机。
redis-server /myredis/redis6380.conf
redis-cli -p 6380
salveof 主机ip 端口 由于本次是本机测试:salveof 127.0.0.1 6379
另一台从机,一样的操作。此时在从主机执行info replication 就显示master ,并且会有两个从机。
复制原理
》每次从机联通后,会给主机发送sync指令
》主机立刻进行存盘操作,然后把RDB文件,发给从机
》从机收到RDB文件后,会进行全盘加载
》之后每次主机的写操作,都会立刻给发送给从机,从机执行相同的命令
此模式的缺点
当主机挂了,就不能写操作了,需要一个及时有主机。因此有哨兵模式,通过哨兵指定主机。
哨兵模式
反客为主的自动版,能够后台监控主机是否故障,如果故障了根据投票数自动将从库转换为主库.
配置哨兵
启动哨兵
故障恢复原则