登录  /  注册
首页 > 数据库 > Redis > 正文

在线互相切换Redis主从实例

发布: 2020-03-27 09:25:21
转载
1934人浏览过

在线互相切换Redis主从实例

由于某些原因,我们可能需要将redis master更换机器,我们可以停机进行更换,但是那样可能影响到用户体验。本文简要操作进行不停机迁移。

(推荐:redis视频教程

系统环境

CentOS 6.3 x64

redis-server 2.6.16

机器两台s1\s2

操作步骤

1、我们在新redis服务器上,启动一个redis实例,配置和master配置一致,不同的是配置文件中修改并启用 slave-read-only no,

让slave 能写,因为 “Since Redis 2.6 by default slaves are read-only.”

2、让新redis成为slave:redis 127.0.0.1:6379>SLAVEOF s1 6379

然后可以查看s2上的log,会有大量的同步信息,也可以使用info命令查看状态。

3、s2完全同步s1的数据后,我们修改游戏app的redis ip,改为s2的ip。

4、查看游戏是否正常。

5、以上没有问题后,在s2上执行 redis 127.0.0.1:6379> SLAVEOF NO ONE

6、下线s1

PS:

SLAVEOF host port

SLAVEOF 命令用于在 Redis 运行时动态地修改复制(replication)功能的行为。

通过执行 SLAVEOF host port 命令,可以将当前服务器转变为指定服务器的从属服务器(slave server)。

如果当前服务器已经是某个主服务器(master server)的从属服务器,那么执行 SLAVEOF host port 将使当前服务器停止对旧主服务器的同步,丢弃旧数据集,转而开始对新主服务器进行同步。

另外,对一个从属服务器执行命令 SLAVEOF NO ONE 将使得这个从属服务器关闭复制功能,并从从属服务器转变回主服务器,原来同步所得的数据集不会被丢弃。

利用『 SLAVEOF NO ONE 不会丢弃同步所得数据集』这个特性,可以在主服务器失败的时候,将从属服务器用作新的主服务器,从而实现无间断运行。

可用版本:

>= 1.0.0

时间复杂度:

SLAVEOF host port ,O(N), N 为要同步的数据数量。

SLAVEOF NO ONE , O(1) 。

返回值:

总是返回 OK 。

更多redis知识请关注redis入门教程栏目。

以上就是在线互相切换Redis主从实例的详细内容,更多请关注php中文网其它相关文章!

智能AI问答
PHP中文网智能助手能迅速回答你的编程问题,提供实时的代码和解决方案,帮助你解决各种难题。不仅如此,它还能提供编程资源和学习指导,帮助你快速提升编程技能。无论你是初学者还是专业人士,AI智能助手都能成为你的可靠助手,助力你在编程领域取得更大的成就。
相关标签:
来源:ttlsa网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
关于CSS思维导图的课件在哪? 课件
凡人来自于2024-04-16 10:10:18
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号