Redis主从配置

今天学习一下Redis集群,顺便整理总结一下

一、准备

  1. 已经装好redis的linux机器

  2. 连接ssh工具(笔者采用的MobaXterm)

  3. redis 主从复制的缺陷

二、集群的好处

  1. 主从备份、防止主机宕机
  2. 读写分离,分担master的任务
  3. 任务分离,使得不同服务器分担不同备份工作与计算工作

三、集群的方式

在这里插入图片描述

四、实战

这里打算采用第一个方式进行集群(主从备份)
一个master 两个 slave
下载和安装Redis这里就叙述了,主要集群本身
笔者环境:
安装redis的home目录是: /usr/local/redis
该文件下有一个redis.conf配置文件(这个就是今天重点)
在这里插入图片描述

  • 步骤1:copy 两份 redis.conf配置文件 分别命名为redis6380.conf 和 redis6381.conf (这里redis服务是以端口区分)redis.conf 启动是master, redis6380.conf和redis6381.conf是slave
    在这里插入图片描述

  • 步骤2、修改redis6380.conf配置文件

vim redis6380.conf

1、修改端口和pid
在这里插入图片描述
2、从服务器只读
在这里插入图片描述
3、关掉aof备份
在这里插入图片描述
4、设置slave的主人是谁
4在这里插入图片描述
5、开启Rdb备份(这个比较耗IO,一般由slave去做)
在这里插入图片描述
6、:wq! 保存结束

  • 步骤3、修改redis6381.conf配置文件
vim redis6381.conf

这个跟上面差不多
1、关闭rdb备份和aof备份
在这里插入图片描述
2、设置端口为6381
在这里插入图片描述
3、从服务器只读
4、设置slave的主人是谁

  • 步骤三、修改redis.conf
    1、关闭Rdb备份(同上上图)
    2、开启aof备份
    在这里插入图片描述
    3、:wq! 保存退出
  • 步骤四 启动三个redis服务器
    在这里插入图片描述
    连上master服务器设置一个值 set name zhangsan
    在这里插入图片描述
    另外开一终端: 连接上slave 6380 端口的服务器,获取 name的值,同时发现不能设置
    在这里插入图片描述
    6381也是类似的
    在这里插入图片描述

这里基本完成redis集群功能了,你可能会发现这样好像不安全,谁都可以连,这时候可以设置master的密码
我们编辑redis.conf文件
在这里插入图片描述
pkill -9 redis (关闭所有redis服务) 通过 auth 授权输入密码
在这里插入图片描述
我们重新启动 slave服务 看看还能不能同步到这个值
在这里插入图片描述
结果发现得到是nil ,因为master需要密码才可以登录,slave没有密码怎么登录,所有需要修改slave的配置redis6380.conf 和redis6381.conf文件
在这里插入图片描述

修改slave配置文件的密码保存退出,重新启动,就可以收到master设置的值
在这里插入图片描述

五 总结

Master配置:
1:关闭rdb快照(备份工作交给slave)
2、可以开启aof

slave 配置
1、声明slave-of
2、配置密码【如果master有密码】
3、【某个】slave打开rdb快照功能
4、配置是否只读【slave-read-only】

六 redis 主从复制的缺陷

每次slave断开之后(无论是主动断开,还是网络故障)
再连接master
都要master全部dump出来rdb,再aof, 即同步的过程都要重新执行1遍,
所以要记住—多台slave不要一下都启动起来,否则master可能IO剧增

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值