redis主从配置

188 阅读2分钟

不管windows 还是linux主从配置一样,无非启动方式不同而已,今天犯懒直接用windows弄得主从配置

第一步:

先配置redis。conf(Windows中的是redis.windows.conf)

将redis下载后复制三分,分别命名为,redis6379:主服务器、redis6380:从服务器1、redis6381:主服务器2

第二部:

修改主从服务器配置:redis.windows.conf 跟 redis.windows-service.conf 端口一同修改(redis.windows-service中不用做持久化配置)

redis6379中conf配置默认,只需将他的aof持久化打开即可

redis6380从服务器1,需要修改port 端口改为6380、配置rdb持久化配置,aof关闭,将slaveof打开,修改为slaveof 127.0.0.1 6379 (意思是把这个作为6379的从服务器之一),pidfile修改为pidfile /var/run/redis6380.pid,是否只读slave-read-only yes

redis6381配置同上,吧6379改为6381即可,主服务器开启了aof持久化,从服务器1开启了rdb持久化,第二个从服务器就不用做持久化设置了

第三部:添加服务

用cmd命令,进入redis每个目录中执行以下这个命令,redis-server --service-install redis.windows.conf --loglevel verbose --service-name Redis6379(6379这里改成每个不同的端口)

v2-846d3d5acd1a838a429816da60fff3d7_720w.jpg

.打开电脑服务,启动两个从服务并设置为自动启动

v2-a12f19a926568edf4a215c3386262b56_720w.jpg


三个windows服务都已经启动,接下来就是测试了

测试1:不同redis服务使用不同端口连接测试

  有两种方式(1、dos下指定端口号连接;2、可视化工具连接)。

  这里我们使用redisclient可视化工具来测试。如下图:能连接上就行了

v2-ede3ed58cd0c4550fb39d97bc258eff3_720w.pngv2-cac58c2a6bde376cc2684374fd73051d_720w.png

上图表明服务没毛病。

  测试2:主redisredis6379数据是否会写到redis6380和redis6381?

  测试方式(直接连接redis6379,写入一个string,看看redis6380和redis6381是否有该值)

v2-6511882749dc412df595ebaa7d7d14f1_720w.jpg

在主服务器中添加一个字符串值,在redisclient中查看,

v2-9b21b59c71199fd193896892b85fc7ee_720w.jpgv2-be48d8d2ea9b197242defc3dc8817a58_720w.jpgv2-754878ae0f499d09a2975e388eac0cb3_720w.jpg

主服务器中有的缓存key值,两个从服务器中也有,至此亲测成功


attachments-2020-05-2ND8SqnA5ec233567f536.jpg