Redis(六)

Redis主从复制

author:QYX

主从复制、就是主机数据更新后根据配置和策略,自动同步到备机的master/slaver机制,Master以写为主,Slave以读为主

用处:

读写分离 性能扩展

容灾快速恢复

配从(服务器)不配(主服务器)

拷贝到多个redis.conf文件include

 Redis(六)

 Redis(六)

 Redis(六)

开启daemonize yes (主配置文件里有,可以省略)

Pid文件名字pidfile (主配置文件里有,可以省略)

指定端口port

Log文件名字 (主配置文件里有,可以省略)

Dump.rdb名字dbfilename (必须更改,否则重名会被替换)

Appendonly 关掉或者替换名字 (主配置文件里有,需要更改)

常用命令:

info replication 打印主从复制的相关信息

 Redis(六)

 slaveof <ip> <port>成为某个实例的从服务器

例设置6379为主服务器

 Redis(六)

 Redis(六)

设置完成后,我们可以从服务器上使用info replication 查看主服务器的配置

Redis(六)

主从复制测试:

Redis(六)

主服务器设置的键值,从服务器也会有(保持数据一致性),但从服务器不可写,从服务器只有读的功能

Redis(六)

以下为个人解答:

1、全都会被复制

2、从服务器只能读

3、原地待命等待主机上线

4、能顺利复制

5、能跟上

Redis主从复制之薪火相传

之前我配置的都是临时从服务器,从主服务器的redis.conf文件的slaveof可以设置永久的从服务器

Redis(六)

主从复制原理:

 Redis(六)

Redis(六)

一个主机有一个从机,其从机又是另一个从机的主机,这就是所谓的薪火相传(见上图),如果上一个主机down掉后,其从机可以使用slaveof no one解绑(不然因为其本身是slave,前面提到过,master down掉后,slave会原地待命,等待主机上线,在此期间其仍然是从机,不能进行写操作),成为新主机,完成了去中心化,但如果中间的机器down,则剩余的机器没有联系了。

Redis(六)

Redis主从复制之哨兵模式

Redis(六)

Redis(六)

步骤如下:

1 新增sentinel.conf文件

Redis(六)

 2 配置sentinel.conf 文件

Redis(六)

 启动哨兵

Redis(六)

 Redis(六)

通过测试我们可以得知,主机6379 down掉后,哨兵会通过留言协议确定它down 掉,然后通过投票选举新的主服务器,从图上我们可得知心的主服务器为6380,另外一点,旧的主机6379变为了新主机6380的从机,换言之,6379上线后便就是新主服务器6380的从服务器

 Redis(六)

在服务器对应的redis.conf可以设置优先级,优先级值(越低)优先级越高,优先级越高则会被选举为主机

Redis(六)

相关推荐