Windows系统下搭建Redis主从服务图文教程(一主二从)
1. Redis主从概念
- Redis的主从复制实现,Redis跟MySQL一样拥有强大的主从复制功能,还支持一个master可以拥有多个slave,而一个slave又可以拥有多个slave,从而形成强大的多级服务器集群架构,如下图:
- Redis的主从复制功能是异步进行的,不会影响master的运行,也不会降低Redis的处理性能。Redis的主从架构中,可以考虑关闭Master的数据持久化功能,而只让Slave进行必要的持久化,这样就能提高主服务器的处理能力和性能,同时Slave设置为只读模式,这样可以避免Slave缓存的数据被误修改等。
下面我们就在一台电脑的Windows系统下搭建Redis的一主二从步骤:
2. 安装三个Redis实例
- 一个Master,两个Slave
- Redis的安装请参考:
- https://blog.****.net/u011318077/article/details/88796262
- 通过上面连接下载redis安装压缩包待用
创建一个Redis_test文件夹,用来进行主从测试,以免影响到系统中已经安装的Redis实例(我电脑已经安装过Redis,并且都加入到了环境变量中,测试完成后可以直接将该文件夹删除,不会对原Redis产生影响)然后里面在创建Redis_master,Redis_slave1,Redis_slave2三个文件夹,然后将Redis压缩包分别解压到三个文件夹中,目前配置还未修改,里面的配置文件还是一样的,是三个独立的实例,如图:
3. 修改配置文件
- 默认的配置文件在实例安装目录下:redis.windows.conf
- 使用编辑器或者记事本打开redis.windows.conf 文件
- redis常用配置说明
- port 端口号,例如6379
- bind 实例绑定的访问地址127.0.0.1
- requirepass 访问的密码
- timeout:请求超时时间
- logfile:log文件位置
- databases:开启数据库的数量
- dbfilename:数据快照文件名(只是文件名,不包括目录)
-
补充:Redis配置详细介绍及查看命令参考【https://www.runoob.com/redis/redis-conf.html】
-
Redis_master中的配置文件不做修改
-
Redis_slave1配置文件中port 6379修改为6380
-
Redis_slave2配置文件中port 6379修改为6381
-
由于三个服务器端都是在同一台电脑的同一个系统下,bind都是本地IP地址127.0.0.1
-
三个独立的Redis实例,但是端口不一样,之后就可以独立启动
4. 启动测试三个Redis服务器端实例
- 分别打开三个CMD窗口,分别跳转到实例文件夹中,分别执行以下启动命令:
- redis-server redis.windows.conf
- 注意redis.windows.conf也可以不写,默认会使用该配置文件,也可以自定义配置文件,然后重命名配置文件
- 由于我电脑已经安装过Redis,并且添加到了环境变量,CMD直接使用redis-server会启动我之前安装过的Redis实例,如果你的电脑也安装过,该处主从测试,切换到对应文件夹启动服务器端,以免发生冲突,测试完成后,可以将Redis_test删除,不会对系统中已有的Redis产生影响
- 启动结果如下,目前还是三个独立的Redis服务器端:
测试完成后,关闭三个服务器端
5. 主从Redis服务绑定,启动主从服务
- 分别打开Redis_slave1和Redis_slave2文件夹中的配置文件,
- 在port行下面增加一行,用于绑定主服务器端的IP地址和port端口:
slaveof 127.0.0.1 6379
依次启动绑定后的主、从1、从2服务器端:
- 如下图所示表示,主从服务器创建成功
- 配置修改绑定后,现在就形成了主从服务器,服务器端已经不是独立的了
6. 启动主从客户端,主从复制测试
- 保持上面服务器端打开状态,再次打开三个CMD窗口,切换到主从服务器文件夹中,分别启动客户端并连接对应的服务器端
- 如下图所示