VMware虚拟机14.0+CentOS7配置Redis的主从分布

1.在虚拟机上安装Redis,可参考:
(VMware14.0+CentOS7虚拟机下安装redis4.0.10)

2.mkdir master slave1 slave2建立三个文件夹master、slave1、slave2
VMware虚拟机14.0+CentOS7配置Redis的主从分布_第1张图片
3.拷贝redis.conf到建立的文件夹master、slave1、slave2
VMware虚拟机14.0+CentOS7配置Redis的主从分布_第2张图片
4.修改配置
(1)修改master里面redis.conf的内容
更改端口和开启远程连接

port 7000	
bind 0.0.0.0    

(2)修改slave1里面redis.conf的内容
更改端口和开启远程连接,注意:slaveof默认是注释的,因为我是在一台主机上配置主从分布,所以masterip 就是虚拟机的静态ip并且slave1和slave2的masterip是一致的

port 7000	
bind 0.0.0.0
slaveof <masterip> <masterport>    

(3)修改slave2里面redis.conf的内容
更改端口和开启远程连接

port 7000	
bind 0.0.0.0
slaveof <masterip> <masterport>    

5.启动机器进行测试
分别进入redis的bin目录下执行命令:
分别是以分别的配置文件启动各自的服务

./redis-server /root/master/redis.conf
./redis-server /root/slave1/redis.conf
./redis-server /root/slave2/redis.conf

看到一下结果说明从节点同步进来了
VMware虚拟机14.0+CentOS7配置Redis的主从分布_第3张图片
master主机里的key

[root@localhost bin]# ./redis-cli -p 7000
127.0.0.1:7000> key *
(error) ERR unknown command 'key'
127.0.0.1:7000> keys *
1) "com.wang.dao.EmpDAO"
2) "job"
3) "age"
4) "name"
5) "content"
127.0.0.1:7000> 

slave1主机里的key

[root@localhost bin]# ./redis-cli -p 7001
127.0.0.1:7001> keys *
1) "age"
2) "com.wang.dao.EmpDAO"
3) "content"
4) "name"
5) "job"

主节点执行FLUSHALL

127.0.0.1:7000> FLUSHALL
OK
(1.64s)
127.0.0.1:7000> KEYS *
(empty list or set)

查看从节点的keys

127.0.0.1:7001> keys  *
(empty list or set)

**注意:**从节点是只读的,并不允许写操作

127.0.0.1:7001> set age 15
(error) READONLY You can't write against a read only slave.

(不建议)如果想允许写操作,需要修改redis.conf配置文件为no

slave-read-only  yes

主从架构仅仅只为主节点的数据备份,当主节点宕机时,并无法选择其中一个为新的主节点

你可能感兴趣的:(VMware虚拟机14.0+CentOS7配置Redis的主从分布)