redis的主从复制测试

我有三台服务器,都安装了redis,分别配置好了端口,以及都打开RDB和AOF持久化。

准备把服务器信息与redis端口改成下面这样:

一、

服务器:192.168.116.128

redis端口:6379

二、

服务器:192.168.116.129

redis端口:6380

三、

服务器:192.168.116.130

redis端口:6381

那现在我们以6379为主,6380和6381两个为从,配置一下

主要操作有以下几步:(修改redis.conf)

1、把6379的bind 127.0.0.1 改为 0.0.0.0

2、把redis.conf里的pidfile改为相对应的端口名称

pidfile /var/run/redis_6379.pid 改为 pidfile /var/run/redis_6379.pid

pidfile /var/run/redis_6379.pid 改为 pidfile /var/run/redis_6380.pid

pidfile /var/run/redis_6379.pid 改为 pidfile /var/run/redis_6381.pid

3、三台机器的redis.conf里的logfile

logfile  “”都改为 logfile  /opt/logs/redis/redis.log

4、 主服务器不用改slaveof,两台从服务器6380和6381里的slaveof需要改

slaveof <masterip> <masterport> 改为 slaveof 192.168.116.128 6379

slaveof <masterip> <masterport> 改为 slaveof 192.168.116.128 6379

做完之后,三台服务器都重启,连接各自端口的客户端,

在主机里进行set key


观察从机key的变化

发现主机里进行写操作,也会复制到从机里。

那我们再来看一下三台机器的主从信息

主:


6380从:

6381从:

现在主机上的数据是同步给了从机,那如果主机挂掉了会怎么办呢?是所有从机乖乖的等待主机连上?还是从机自己上位呢?

我们来试一下:

主:宕机

6380从:角色还是slave,master的host和port还是没变,我们看另外一台从

6381从:发现也是没变的。

所以,当我们的主机宕机的时候,从机不会上位。那如果我们我们主机又连接成功会怎么办呢?

主:我们重启主,观察主从情况,发现主下还是又两个从机。

6380从:

由此可见,当我们的主机宕机之后,从机不会上位,乖乖的等我们主机连接成功后,继续成为主机的slave。

再思考,如果我们有一台从机宕机了,然后又连接上了,这个时候从机会自动连接到主机嘛?如果连接上了,那主机在从机宕机的这段时间做的写命令,从机会复制过去吗

6380从:让这台机器宕机

在主机里做一些写操作

我们知道6381这台从机肯定没啥问题

那现在我们让6380这台从机重启一下, 观察效果

是不是和你想的一样呢,主机重连会自动成为master的slave的,因为我们在6380的redis

.conf里配置了slaveof这个配置项,如果我们这里没有配置,只是用在6380里执行

slaveof 192.168.116.128 6379 这种命令行来做的话,

这里从机连上依然是master,不会自动成为6379的slave,这里要注意。

再看看主从关系吧


所以如果从机宕机,到后来连接成功时,主机在这其中做的写命令,从机会复制过来的,保证数据的一致。

我们发现,我们有6380和6381两台从机连接到一台端口为6379的服务器上,那如果有很多从机都连到一台主机的话,那主机的压力是不是太大啦?

那我们试着让6381能不能连到6380上呢?

因为这里我是三台服务器,不是一台服务器里copy三个redis.conf来启动的,所以我们想让6381slaveof 6380的话,要把6380的redis.conf里bind 127.0.0.1 改为 0.0.0.0

然后在6381里输入 slaveof 192.168.16.129 6380

可以看到6381是6380的slave,那我们来看下6380的情况

可以发现6380是6379的slave,自己下面还有一个6381这么个slave,

那我们在主机6379里做写操作,看6381是否能复制过去

6379主:

6381从:

没问题!这样的话,就不用让所有的从机都连到一台主机上,也可以连接到其他从机上,从而减少主机的压力。

那我们再想啊,刚刚我们主机宕机了,从机也没能上位呀,那不能就由着他宕机啊,毕竟我们业务还是要正常运转的,怎么办呢?客观别急,且看下回分解。

猜你喜欢

转载自blog.csdn.net/qq_33101675/article/details/80634899