redis主从架构宕机问题解决方法
主机宕机
- 设置端口6379是主机,端口6380是从机,全部都正常启动
- 验证在6379写入数据,在6380也能得到数据
- 现在将6379主机停掉,模拟主机宕机
- 由于主机宕机了,现在就要将6380从机设置为主机,使用slaveof no one命令,此时原来的从机变为主机也有了写的权限
- 要是原来6379经过修复后,能够正常工作,先将6380主机数据进行保存持久化,将rdb文件,覆盖原主机6379的rdb文件,进行数据的统一。
- 启动原来的主机6379
- 将6380再次设置为从机
- 先验证主机和从机数据是否一致
- 在主机设置值,看能否同步到从机。
- 测试从机是否还有写权限,作为从机之后,不再具有写权限了。
从机宕机
这个相对而言比较简单,在Redis中从库重新启动后会自动加入到主从架构中,自动完成同步数据;
总结
如果在主从复制架构中出现宕机的情况,需要分情况看:
- 从Redis宕机
- 这个相对而言比较简单,在Redis中从库重新启动后会自动加入到主从架构中,自动完成同步数据;
- 问题? 如果从库在断开期间,主库的变化不大,从库再次启动后,主库依然会将所有的数据做RDB操作吗?还是增量更新?在Redis2.8版本后就实现了,主从断线后恢复的情况下实现增量复制。
- 主Redis宕机,这个相对而言就会复杂一些,需要以下2步才能完成
- 第一步,在从数据库中执行SLAVEOFNO ONE命令,断开主从关系并且提升为主库继续服务;
- 第二步,将主库重新启动后,执行SLAVEOF命令,将其设置为其他库的从库,这时数据就能更新回来;
- 这个手动完成恢复的过程其实是比较麻烦的并且容易出错,有没有好办法解决呢?当前有的,Redis提供的哨兵(sentinel)的功能。
redis主从架构宕机问题解决方法相关推荐
- redis主从架构宕机问题手动解决
1 主机宕机 1. 设置端口6379是主机,端口6380是从机,全部都正常启动 2. 验证在6379写入数据,在6380也能得到数据 3. 现在将6379主机停掉,模拟主机宕机 4. 由 ...
- Redis深入理解五 :Redis主从架构、哨兵架构、高可用集群模式
redis主从架构 redis主从架构搭建,配置从节点步骤: 复制一份redis.conf文件 将相关配置修改为如下值: port 6380 pidfile /var/run/redis_6380.p ...
- 【带你重拾Redis】Redis 主从架构
Redis 主从架构 单机的 Redis,能够承载的 QPS 大概就在上万到几万不等.对于缓存来说,一般都是用来支撑读高并发的.因此架构做成主从(master-slave)架构,一主多从,主负责写,并 ...
- Redis面试 - Redis 主从架构
Redis 主从架构 单机的 redis,能够承载的 QPS 大概就在上万到几万不等.对于缓存来说,一般都是用来支撑读高并发的.因此架构做成主从(master-slave)架构,一主多从,主负责写,并 ...
- Redis 主从架构数据同步
Redis 主从架构图 主从架构能够很大提升并发能力,master 节点负责写数据,slave 节点负责读数据,这样就涉及到 master 和 slave 数据同步的一个过程 一起来看一下数据是如何同 ...
- Redis主从架构:主从同步和哨兵机制
Redis主从架构:主从同步和哨兵机制 一. Redis主从架构 二. 主从同步 2.1 引入 2.2 原理 (1) 全量同步 (2) 增量同步 (3) 优化Redis主从集群 2.3 总结 三. 哨 ...
- 【Redis】Redis主从架构和哨兵模式
文章目录 主从架构 为什么需要Redis主从架构? 搭建主从架构(一主二从) 主从一致原理 复制积压缓冲区 全量复制 增量复制 在主从架构中出现了宕机的情况 为什么主从库之间的复制不使用 AOF? 哨 ...
- Linux学习-redis主从架构
redis主从架构 #三个节点,一主,二从(由于资源有限,在一台机器上实现),主节点写,从节点读 #1:创建目录 [root@redis opt]# mkdir {7001..7003} [root@ ...
- web网站服务器宕机应急,web服务器的宕机诊断方法
宕机诊断方法编辑步骤1:发生了什么事 系统管理员必须肩负起分析和判断Web服务器宕机原因的责任.需要解决如下的问题: 是否是断电,发电机测试以及其他类似问题影响了整体物理环境? 和Web服务器的通信是 ...
- mysql主从复制安装部署配置操作步骤及主从库宕机处理办法
mysql主从复制安装部署配置操作步骤及主从库宕机处理办法 大家好,我是酷酷的韩~ 1.前期准备 (1)首先需要准备至少两台mysql 这里方便演示,用了两台虚拟机 环境是centos7 主: 172 ...
最新文章
- VMware 克隆Linux后找不到eth0
- 手工纸盒子_不锈钢水槽如何选购,拉伸水槽与手工槽制造工艺有何区别
- Two Paths CodeForces - 14D(暴力+树的直径)
- vue双向数据绑定的原理
- shell 特殊符号
- 【精品】Deepsort文章深度解析
- UmiJS 是一个 react 开发框架
- 在ASP.NET Web API中返回错误的最佳实践
- linux下软件的卸载,Linux下各种格式软件的安装及卸载方法
- mysql alter auto increment_将MySQL列更改为AUTO_INCREMENT
- 【职场日语】日文简历模板
- 自学软件测试需要学到哪些内容?
- flutter安装教程与XD教程
- 卡耐基梅隆大学计算机科学课本,美国卡耐基梅隆大学计算机科学硕士.pdf
- 自己制作 XP With SP3 系统光盘 包括驱动SATA集成AHCI驱动
- Python通过解压ofd文件获取发票信息
- 单机模拟集群(三主两从)
- 瓦片地图面面观之瓦片组织
- 剑指Offer第十天——T46——动态规划
- 2018-7-27银行卡bin大全-根据银行卡开头查银行
热门文章
- 不用空格怎么打两个空格_为什么在寸土寸金的键盘上,空格键却要做这么长,究竟怎么回事?...
- 如何做爬虫python在线观看_Python爬虫实战:利用scrapy,短短50行代码下载整站短视频...
- shell 死循环if判断_一个简单的shell脚本问题!怎么出现了死循环呢?谢谢
- 按键映射_通J1手游按键开箱——这可能是最小的游戏外设了
- matlab repmat_三行MATLAB实现动漫风格照片
- Springboot2.2.6中的RSocket使用, RSocket 进行反应式数据传输
- sql2005 脚本中给字段写说明
- Mysql数据库内连接INNER JOIN的使用
- C++调用C#编写的com组件方法
- 当出现opencv的.dll无法找到的问题的时候用一下处理方法