Redis(六):Redis主从复制(2)配置主从复制

本文涉及的产品
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
简介:

环境说明


按照之前的步骤安装2台服务器:

Redis01 172.16.100.10
Redis02 172.16.100.20


开启防火墙端口和关闭seLinux


打开6379端口

wKiom1dv5RLS4mfeAADUNpcsLBA267.jpg-wh_50

关闭selinux

wKioL1dv5RnitAcfAACkjWDivZ0128.jpg-wh_50

然后重启iptables服务。


修改配置文件


修改主服务器配置文件,如果不需要密码验证则无需修改此文件,修改后请重新启动Redis服务

wKiom1dv5V3yLZohAADOZCadLwE041.jpg-wh_50

修改从服务器配置文件,

找到slaveof字段,如果主服务器有密码验证,则要配置相同的密码,如下如:

wKioL1dv5ZzRNB84AAD-Y4hYySU743.jpg-wh_50


验证主从复制


在主上设置一个键值数据

wKiom1dv5eHiBSPsAAAqym-9nn0394.jpg-wh_50

在从上获取一个键值数据

wKioL1dv5eqA_MEaAAAoMrEWUxM063.jpg-wh_50

通过info查看连接信息,在主上执行下面的命令:

wKiom1dv5fLzxSKXAAAZHBhiSxY494.jpg-wh_50

wKioL1dv5frAjGQjAABbdJf_ejg221.jpg-wh_50


不停机切换


Redis的主从模式中的主与从没有什么区别,唯一的区别就是在这个模式下从服务器是不允许被写入数据的,看下图:

我在从服务器上做一个SET操作,提示如下

wKiom1dv5oPQV1v2AAAoj3R_ThI313.jpg-wh_50

其实主从切换就是把从变成主,主变成从。基本步骤如下:

设置从服务器可写:

修改配置文件,如下图:

wKiom1dv5oqB3UCDAACWtOByeBg840.jpg-wh_50

修改完成后,重启从服务器。

修改和重启从服务器后,从服务器依然可以从主服务器去同步数据,这一点不用担心。

把应用访问的IP更换成从服务器的IP

这一步忽略,实际上就是业务对数据库访问IP的变更。

把从服务器设置为主服务器:

在从上执行这个命令

wKioL1dv5pOz5lbKAAAbNQqlzXQ379.jpg-wh_50

上面这个命令是将从服务器关闭复制功能,将从服务器作为独立的主服务器运行。这个很好理解,就是它不去同步其他的数据库服务器了,自己单独运行,那么自然就是主服务器。

上面的命令还有其他用法就是动态切换主服务器,比如如果我们要临时让从服务器去其他主服务器去同步数据,可以这样运行,如下图:

1
slaveof MasterIP MasterPort

注意:假如当前服务器已经是A服务器的从服务器,而你又使用该命令让当前服务器成为B服务器的从服务器,也就是从B同步数据,那么当前服务器将丢弃之前同步的就数据,开始对新的主服务器进行同步。

这个命令只是临时生效,临时覆盖配置文件中的slaveof设置,重启后恢复。

验证一下复制是否停止:

在原来的主服务器上运行info命令,如下显示:

虽然角色是主,但是SLAVE的连接已经没有了

wKiom1dv5vaDOLnpAABB0SABb-I979.jpg-wh_50

我们做一个SET操作,然后在原来的从服务器(Redis02)上执行一下GET操作,看看是否还可以获取数值:

wKioL1dv5v6w9DraAAA5HpujskY627.jpg-wh_50

wKiom1dv5wXxxDD8AAAkjjeY_d4109.jpg-wh_50

可以看到无法获取。

Redis02上执行info命令看看结果:

显示它自己已经变成主了。

wKioL1dv5w2CspTJAABAS0mT0wE388.jpg-wh_50

通过上述的操作我们就可以替换原来的主服务器或者在主服务器失败的时候可以手动切换





      本文转自linuxjavachen  51CTO博客,原文链接:http://blog.51cto.com/littledevil/1793091,如需转载请自行联系原作者





相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
1月前
|
NoSQL Java Redis
Springboot从2.x升级到3.x以后redis默认配置调整
Springboot从2.x升级到3.x以后redis默认配置调整
46 0
|
2月前
|
NoSQL Redis
若依管理系统去掉Redis相关配置
若依管理系统去掉Redis相关配置
|
2月前
|
NoSQL Redis 数据安全/隐私保护
Docker中Redis的安装与配置
本文主要讲解如何在Docker环境中搭建Redis环境,并进行相关配置
245 5
Docker中Redis的安装与配置
|
1月前
|
NoSQL Linux Redis
Linux系统中安装redis+redis后台启动+常见相关配置
Linux系统中安装redis+redis后台启动+常见相关配置
|
2月前
|
NoSQL Redis Docker
在docker中安装redis,并且阿里云服务器配置
在docker中安装redis,并且阿里云服务器配置
183 1
|
15天前
|
监控 NoSQL Redis
redis主从复制
redis主从复制
|
1月前
|
NoSQL 关系型数据库 MySQL
Docker安装详细步骤及相关环境安装配置(mysql、jdk、redis、自己的私有仓库Gitlab 、C和C++环境以及Nginx服务代理)
Docker安装详细步骤及相关环境安装配置(mysql、jdk、redis、自己的私有仓库Gitlab 、C和C++环境以及Nginx服务代理)
207 0
|
1月前
|
存储 监控 NoSQL
Redis 架构深入:主从复制、哨兵到集群
大家好,我是小康,今天我们来聊下 Redis 的几种架构模式,包括主从复制、哨兵和集群模式。
Redis 架构深入:主从复制、哨兵到集群
|
1月前
|
NoSQL 算法 数据管理
【Redis】Redis配置参数详解:优化过期删除机制
【Redis】Redis配置参数详解:优化过期删除机制
71 0
|
1月前
|
负载均衡 NoSQL 容灾