转自:https://blog.youkuaiyun.com/u013845177/article/details/78817331
现在有3个redis,分别是
192.168.1.103 6379
192.168.1.103 6380
192.168.1.103 6381
这时选择192.168.1.103 6379是主机
其他的是从机,现在配置主从复制的话,只配置从机就行,也就是端口是6380和6381的redis。
配置有2种,第1种是临时配置,重启一下redis就没了,得重启配置。第2种通过配置service.config文件配置,永久有效。
第1种配置:
1、在这3个redis的service.config中找到bind 127.0.0.1 改成 bind 127.0.0.1 192.168.1.103#192.168.1.103是redis那么服务器的IP地址
2、直接在从机(6380、6381)的客户端输入:slaveof 192.168.1.103 6379(也就是主机的地址加端口),完毕,就这么简单。
接口分别打开6379、6380、6381的客户端(redis-cli.exe -h 127.0.0.1 -p 6380),输入info replication。
##
#6379(主)显示的内容
# Replication
role:master(角色主机)
connected_slaves:2(2个关联)
slave0:ip=192.168.1.103,port=6381,state=online,offset=29,lag=0(从的地址)
slave1:ip=192.168.1.103,port=6380,state=online,offset=29,lag=0
master_repl_offset:29
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:2
repl_backlog_histlen:28
127.0.0.1:6379>
6380(从)显示的内容
# Replication
role:slave(角色从机)
master_host:192.168.1.103(主机ip)
master_port:6379(主机端口)
master_link_status:up(连接状态,up:ok,down:不ok)
master_last_io_seconds_ago:5
master_sync_in_progress:0
slave_repl_offset:85
slave_priority:100
slave_read_only:1
connected_slaves:0
master_repl_offset:0
repl_backlog_active:0
repl_backlog_size:1048576
repl_backlog_first_byte_offset:0
repl_backlog_histlen:0
127.0.0.1:6380>
6381(从)显示的内容
# Replication
role:slave
master_host:192.168.1.103
master_port:6379
master_link_status:up
master_last_io_seconds_ago:1
master_sync_in_progress:0
slave_repl_offset:141
slave_priority:100
slave_read_only:1
connected_slaves:0
master_repl_offset:0
repl_backlog_active:0
repl_backlog_size:1048576
repl_backlog_first_byte_offset:0
repl_backlog_histlen:0
127.0.0.1:6381>
##
测试:先在主机上 set name ywj,然后get name得到ywj。接着直接在从机中get name也能得到ywj
第2种配置:
1、在这3个redis的service.config中找到bind 127.0.0.1 改成 bind 127.0.0.1 192.168.1.103#192.168.1.103是redis那么服务器的IP地址
2、找到 6380和6381的配置文件,redis.windows-service-6380.config、redis.windows-service-6381.config
打开修改,找到
# slaveof <masterip> <masterport>
换成
slaveof 192.168.1.103 6379
保存,重启6380、6381的redis,OK,完毕。
效果如上
OK,配置完毕
有个地方要注意:
从机这时只能读不能写,要想从机能读能写,就得在相关service.config文件中找到 slave-read-only yes,改成 slave-read-only no 就行了。