本示例是伪主从模式,是指在一台机器中多个配置redis服务,本文重点在于配置步骤相同

windows版下载地址:https://github.com/MicrosoftArchive/redis/releases(官方没有windows版,只有微软维护的64位版,最新版本是3.2版)

这里进行一主两从配置。主端口7001,从端口7002、7003。

1、redis我使用的是zip解压版,直接解压即可。

2、在redis根目录建三个文件夹,分别命名为7001、7002、7003。这三个名称分为表示redis启动后的端口号。

windows 下 Redis主从复制

3、再建立三个bat,分别命名为7001、7002、7003。内容如下,为了方便启动三个redis服务使用。

windows 下 Redis主从复制

4、将redis根目录下的redis.windows.conf文件分别拷贝至7001、7002、7003文件夹。

5、打开7001文件夹下的redis.windows.conf文件。

修改项目内容:port 。值7001。

windows 下 Redis主从复制

6、打开7002、7003文件夹下的redis.windows.conf文件。

修改项目内容:port、slaveof。

7002的文件修改端口为7002,7003的文件端口修改为7003.

slaveof  192.168.1.3 7001 

windows 下 Redis主从复制

windows 下 Redis主从复制

这样一主两从就配置完毕了,简单点说只是修改了一句话即可。slaveof  192.168.1.3 7001 。

7、先从7001、7002、7003依次启动三个服务。

启动服务后三个服务的控制台分别会显示主从信息。

主控制台会显示那些从服务加入进来。内容显示7002、7003分别加入进来了并同步数据。

windows 下 Redis主从复制

从控制台会显示加入了那个主服务。

windows 下 Redis主从复制

8、测试。

redis-cli.exe -h 192.168.1.3 -p 7001 #首先连接7001
192.168.1.3:7001> keys * #查看是否存在key
(empty list or set) #显示不存在任何key
192.168.1.3:7001> set testkey tesvvalue #设置一个名字叫做testkey的key,值为tesvvalue。
OK #赋值成功
192.168.1.3:7001> quit #退出7001

redis-cli.exe -h 192.168.1.3 -p 7003 #连接7003
192.168.1.3:7003> keys * #查看是否存在key
1) "testkey" #显示存在一个名字叫做testkey的key
192.168.1.3:7003> get testkey #获得testkey的值
"tesvvalue" #值为tesvvalue
192.168.1.3:7003> set noinsert yes #测试是否可以在7003set数据。
(error) READONLY You can't write against a read only slave. #出错,提示这是一个只读的从服务。

经过以上测试表示我们的主从复制成功了。


相关文章: