redis篇之主从复制

概念:主机(master)收到应用的写操作后根据自己配置的策略自动同步到从机(slave)上。主机负责写,从机负责读。读写分离。要说明的是主从复制从来都不是redis独有的,其他类型数据库如mysql均支持。
优点:读写分离,扩展redis的读能力,容灾快速恢复
缺点:不适合写操作多的情况,这里不考虑多master情况,多maste之间的数据一致性不好解决
**安全问题:**由于本人学习部署redis全部在公网云服务器,默认开启6379端口也是不允许访问,强烈不建议修改配置文件关闭保护模式的同时注释掉bind 127.0.0.1,不然是个人都能连上你的redis服务器(即使你的端口不叫6379,Ip未泄露,但是有漏洞扫描软件依然能检测到,一旦连上一个flushall命令全部清空你的数据),解决办法如下(前提均要默认开启保护模式):

  • 指定bind的Ip,只允许指定Ip远程访问。
  • 设置密码,如下:requirepass yourpassword,不过官方建议你配置长密码,至少20位吧,注释掉bind 127这一行,即允许所有人但是需要密码才能访问。
  • 以上均两种方案均可以实现redis远程访问,方法2注意连接时候指定密码即可,即:redis-server -h Ip -p port -a yourpassword
    开始配置主从模式
    本人自己是三台服务器,即一主二仆,没有搭建伪集群,
  • 检查redis服务的主从状态
    即: 进入redis命令行后,输入info replications查看该redis服务主从状态,如下:进入redis命令行后,输入info replications查看该redis服务主从状态
    在这里插入图片描述
    如上没有配置默认都是master模式。
  • 配从不配主
    。只需要配置从机即可。在从机redis的命令行下输入命令:slaveof IP port,在通过info replication验证,如:
    在这里插入图片描述
    执行上述同样步骤在从机节点2进行配置。注意:如果主机开启了密码,请在reids配置文件中加上主机密码,配置如下:
    在这里插入图片描述
  • 验证主节点状态
    在这里插入图片描述
    在主节点上执行 set k1 v1,在2个从节点分别验证,会发现已经同步过去了
    宕机对集群影响
  • 主机宕机,从机死等,依然是slave,只读不能写的操作;
  • 从机宕机,主机不受影响,依然有读写功能;
  • 从机宕机后恢复,角色将逆转(除非在配置文件中配置过,我这里是配置型命令,重启,内存里配置就没了),变成master。
    主从复制不能解决的问题
  • 主机宕机,整个集群将不具备写能力
  • 主从关系不能自动切换
  • 集群不适合高数据量存储,单节点存储数据有限
    后续将介绍主从复制的自动版-哨兵模式,可以解决上述前两个问题。以及redis官方redis cluster,可以解决上述的第三个问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值