【Redis-高效的NoSQL数据库】Redis主从复制

Redis-高效的NoSQL数据库之Redis主从复制



前言

Redis不仅支持集群功能,为了保证单一节点可用性,redis还支持主从复制功能。每个节点有N个复制品(replica),其中一个复制品是主(master),另外N-1个复制品是从(Slave),也就是说Redis支持一主多从。一个主可有多个从,而一个从又可以看成主,它还可以有多个从。
在这里插入图片描述


一、主从复制功能的优点

  • 增加单一节点的健壮性,从而提升整个集群的稳定性。(Redis中当超过1/2节点不可用时,整个集群不可用)
  • ​从节点可以对主节点数据备份,提升容灾能力。
  • ​读写分离。在redis主从中,主节点一般用作写(具备读的能力),从节点只能读,利用这个特性实现读写分离,写用主,读用从。

二、一主多从的搭建

在已经搭建的单机版redis基础上进行操作。(搭建单机版redis参考

1. 搭建前准备

关闭redis单机版

./redis-cli shutdown

创建目录,并且安装的redis单机版中bin目录复制三份,分别叫做:master、slave1、slave2

mkdir /usr/local/replica
cp -r /usr/local/redis/bin /usr/local/replica/master
cp -r /usr/local/redis/bin /usr/local/replica/slave1
cp -r /usr/local/redis/bin /usr/local/replica/slave2

2. 修改从的配置文件

修改2个从的redis.conf,指定主节点ip和端口。并修改自身端口号防止和其他redis冲突。

**slave1**
vim /usr/local/replica/slave1/redis.conf
#指定主节点ip和端口
replicaof 192.168.1.126 6379
#修改自己端口
port 6380

**slave2**
vim /usr/local/replica/slave2/redis.conf
#指定主节点ip和端口
replicaof 192.168.1.126 6379
#修改自己端口
port 6381

3. 编辑启动脚本并且启动三个实例。

提示:一定要关闭单机的redis,否则端口冲突。

编辑启动脚本

#编辑启动脚本
cd /usr/local/replica
vim startup.sh
#在文件中添加下面内容
cd /usr/local/replica/master/
./redis-server redis.conf
  cd /usr/local/replica/slave1
./redis-server redis.conf
  cd /usr/local/replica/slave2
./redis-server redis.conf

赋予权限并启动

#赋权限
chmod a+x startup.sh
#启动
./startup.sh
#查看启动状
ps aux|grep redis

在这里插入图片描述

3. 测试

启动客户端

cd /usr/local/replica/master/
./redis-cli

在这里插入图片描述
在客户端命令行模式下,添加一条数据:
在这里插入图片描述
进去slave查看数据是否同步。

cd /usr/local/replica/slave1
./redis-cli -p 6380

在这里插入图片描述
图片显示数据已经同步到从节点。

  • 26
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值