redis复制有可能碰到的问题汇总


Posted in Redis onApril 03, 2022

使用salveof命令之后,长时间看不到数据同步,以为复制功能失效了,或配置错了。其实不用担心,有两种方法可以确定是否正在建立复制。

在创建redis复制是,一开始可能会发现slave长时间不开始同步数据,可能数据量太大,导致了master在dump数据慢,此时可以在master上执行top -p ${pgrep -d,redis-sever}命令,就可以看到dump的过程。

[root@img1_u ~]# top -p $(pgrep -d, redis-server)
top - 14:06:24 up 54 days,  6:13,  1 user,  load average: 1.18, 1.32, 1.20
Tasks:   2 total,   1 running,   1 sleeping,   0 stopped,   0 zombie
Cpu(s): 15.2%us,  1.7%sy,  0.6%ni, 81.9%id,  0.2%wa,  0.0%hi,  0.4%si,  0.0%st
Mem:  24542176k total, 22771848k used,  1770328k free,  2245720k buffers
Swap:   524280k total,        0k used,   524280k free,  4369452k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
21619 root      20   0 5654m 5.4g  388 R 99.9 23.0   0:23.70 redis-server
 1663 root      20   0 5654m 5.4g 1068 S 15.3 23.0   5042:31 redis-server

redis-server是单进程的,现在通过top命令查看已经有2个进程,因为之前提到的,redis在建立复制的时候,会在主服务上执行bgsave命令,fork一个子进程,dump出RDB文件。master dump完毕,然后再将快照文件传给slave.

方法二:通过rdb_bgsave_in_progress标识

进入master的redis-cli

127.0.0.1:6381> info Persistence
# Persistence
loading:0
current_cow_size:0
current_cow_size_age:0
current_fork_perc:0.00
current_save_keys_processed:0
current_save_keys_total:0
rdb_changes_since_last_save:0
rdb_bgsave_in_progress:0  ##这个表示没有
rdb_last_save_time:1648953406
rdb_last_bgsave_status:ok
rdb_last_bgsave_time_sec:0
rdb_current_bgsave_time_sec:-1
rdb_last_cow_size:311296
aof_enabled:0
aof_rewrite_in_progress:0
aof_rewrite_scheduled:0
aof_last_rewrite_time_sec:-1
aof_current_rewrite_time_sec:-1
aof_last_bgrewrite_status:ok
aof_last_write_status:ok
aof_last_cow_size:0
module_fork_in_progress:0
module_fork_last_cow_size:0

如果rdb_bgsave_in_progress为1,那么master正在进行bgsave命令。同时rdb_current_bgsave_time_sec显示bgsave命令已经执行的时间。由于master服务器上默认不开启RDB和AOF日志,如果rdb_bgsave_in_progress为1,那么就可以肯定由于复制原因发送一个bgsave指令dump出RDB文件。

到此这篇关于redis复制有可能碰到的问题汇总的文章就介绍到这了,更多相关redis复制问题内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Redis 相关文章推荐
基于Redis位图实现用户签到功能
May 08 Redis
Java Socket实现Redis客户端的详细说明
May 26 Redis
Redis Cluster 字段模糊匹配及删除
May 27 Redis
压缩Redis里的字符串大对象操作
Jun 23 Redis
了解Redis常见应用场景
Jun 23 Redis
redis requires ruby version2.2.2的解决方案
Jul 15 Redis
Redisson实现Redis分布式锁的几种方式
Aug 07 Redis
Redis高并发防止秒杀超卖实战源码解决方案
Nov 01 Redis
高并发下Redis如何保持数据一致性(避免读后写)
Mar 18 Redis
使用Redis实现点赞取消点赞的详细代码
Mar 20 Redis
Redis分布式锁的7种实现
Apr 01 Redis
Redis中key的过期删除策略和内存淘汰机制
Apr 12 Redis
 Redis 串行生成顺序编码的方法实现
浅谈Redis 中的过期删除策略和内存淘汰机制
一文搞懂Redis中String数据类型
Apr 03 #Redis
使用Redis做预定库存缓存功能
sentinel支持的redis高可用集群配置详解
redis sentinel监控高可用集群实现的配置步骤
redis调用二维码时的不断刷新排查分析
Apr 01 #Redis
You might like
php实现上传图片生成缩略图示例
2014/04/13 PHP
php sybase_fetch_array使用方法
2014/04/15 PHP
php常用hash加密函数
2014/11/22 PHP
PHP命令空间namespace及use的用法小结
2017/11/27 PHP
PHP htmlentities()函数用法讲解
2019/02/25 PHP
JS IOS/iPhone的Safari浏览器不兼容Javascript中的Date()问题如何解决
2016/11/11 Javascript
JavaScript 栈的详解及实例代码
2017/01/22 Javascript
Three.js获取鼠标点击的三维坐标示例代码
2017/03/24 Javascript
Vue.js教程之axios与网络传输的学习实践
2017/04/29 Javascript
Three.js入门之hello world以及如何绘制线
2017/09/25 Javascript
JavaScript定义及输出螺旋矩阵的方法详解
2017/12/01 Javascript
vue项目实现记住密码到cookie功能示例(附源码)
2018/01/31 Javascript
clipboard在vue中的使用的方法示例
2018/10/19 Javascript
详解如何写出一个利于扩展的vue路由配置
2019/05/16 Javascript
vue-cli3+typescript新建一个项目的思路分析
2019/08/06 Javascript
Vue使用NProgress的操作过程解析
2019/10/10 Javascript
JS实现灯泡开关特效
2020/03/30 Javascript
[03:42]2014DOTA2西雅图国际邀请赛 Navi战队巡礼
2014/07/07 DOTA
python3.3实现乘法表示例
2014/02/07 Python
python基本语法练习实例
2017/09/19 Python
在python2.7中用numpy.reshape 对图像进行切割的方法
2018/12/05 Python
python进行TCP端口扫描的实现
2018/12/21 Python
Python基础之函数基本用法与进阶详解
2020/01/02 Python
K近邻法(KNN)相关知识总结以及如何用python实现
2021/01/28 Python
美国顶级品牌男士大码服装店:DXL
2017/08/30 全球购物
OPPO手机官方商城:中国手机市场出货量第一品牌
2017/10/18 全球购物
《大作家的小老师》教学反思
2014/04/16 职场文书
美国旅游签证工作证明
2014/10/14 职场文书
2014年科室工作总结
2014/11/20 职场文书
2014小学语文教师个人工作总结
2014/12/03 职场文书
护士节慰问信
2015/02/15 职场文书
《雪地里的小画家》教学反思
2016/02/16 职场文书
《赵州桥》教学反思
2016/02/17 职场文书
数学复习课教学反思
2016/02/18 职场文书
创业计划书之DIY自助厨房
2019/09/06 职场文书
MySQL count(*)统计总数问题汇总
2022/09/23 MySQL