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 sentinel 频繁主备切换的问题
Apr 12 Redis
redis实现排行榜功能
May 24 Redis
Windows中Redis安装配置流程并实现远程访问功能
Jun 07 Redis
Redis 彻底禁用RDB持久化操作
Jul 09 Redis
嵌入式Redis服务器在Spring Boot测试中的使用教程
Jul 21 Redis
Redis如何实现分布式锁
Aug 23 Redis
Redis三种集群模式详解
Oct 05 Redis
SpringBoot整合Redis入门之缓存数据的方法
Nov 17 Redis
redis的list数据类型相关命令介绍及使用
Jan 18 Redis
Redis+Lua脚本实现计数器接口防刷功能(升级版)
Feb 12 Redis
一文搞懂Redis中String数据类型
Apr 03 Redis
 Redis 串行生成顺序编码的方法实现
浅谈Redis 中的过期删除策略和内存淘汰机制
一文搞懂Redis中String数据类型
Apr 03 #Redis
使用Redis做预定库存缓存功能
sentinel支持的redis高可用集群配置详解
redis sentinel监控高可用集群实现的配置步骤
redis调用二维码时的不断刷新排查分析
Apr 01 #Redis
You might like
用PHP实现的生成静态HTML速度快类库
2007/03/31 PHP
php $_SERVER当前完整url的写法
2009/11/12 PHP
PHP连接MongoDB示例代码
2012/09/06 PHP
PHP命令行脚本接收传入参数的三种方式
2014/08/20 PHP
PHP往XML中添加节点的方法
2015/03/12 PHP
Linux下快速搭建php开发环境
2017/03/13 PHP
thinkPHP5.0框架事务处理操作简单示例
2018/09/07 PHP
JAVASCRIPT 对象的创建与使用
2021/03/09 Javascript
jqGrid日期格式的判断示例代码(开始日期与结束日期)
2013/11/08 Javascript
JavaScript插件化开发教程 (二)
2015/01/27 Javascript
javascript学习笔记_浅谈基础语法,类型,变量
2016/09/19 Javascript
详解基于Vue cli生成的Vue项目的webpack4升级
2018/06/19 Javascript
vue-drawer-layout实现手势滑出菜单栏
2020/11/19 Vue.js
[10:54]Team Spirit vs Navi
2018/06/07 DOTA
Python学习之asyncore模块用法实例教程
2014/09/29 Python
python中循环语句while用法实例
2015/05/16 Python
在Django的URLconf中进行函数导入的方法
2015/07/18 Python
Python转换时间的图文方法
2019/07/01 Python
浅谈pandas dataframe对除数是零的处理
2020/07/20 Python
python判断元素是否存在的实例方法
2020/09/24 Python
如何用python 操作zookeeper
2020/12/28 Python
Django权限控制的使用
2021/01/07 Python
美国唇部护理专家:Sara Happ
2019/06/19 全球购物
英国著名的美容护肤和护发产品购物网站:Lookfantastic
2020/11/23 全球购物
Python如何定义一个函数
2015/09/01 面试题
班长岗位职责
2013/11/10 职场文书
大三学习计划书范文
2014/05/02 职场文书
企业承诺书怎么写
2014/05/24 职场文书
2016党员干部反腐倡廉心得体会
2016/01/13 职场文书
导游词之嵊泗列岛
2019/10/30 职场文书
Python爬虫进阶之Beautiful Soup库详解
2021/04/29 Python
详解nginx安装过程并代理下载服务器文件
2022/02/12 Servers
Python字符串格式化方式
2022/04/07 Python
Python+Matplotlib图像上指定坐标的位置添加文本标签与注释
2022/04/11 Python
Java的Object类的九种方法
2022/04/13 Java/Android
mysqldump进行数据备份详解
2022/07/15 MySQL