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连接被拒绝的解决方案
Apr 12 Redis
redis通过6379端口无法连接服务器(redis-server.exe闪退)
May 08 Redis
redis 限制内存使用大小的实现
May 08 Redis
Redis基于Bitmap实现用户签到功能
Jun 20 Redis
redis requires ruby version2.2.2的解决方案
Jul 15 Redis
Redis做数据持久化的解决方案及底层原理
Jul 15 Redis
Redis模仿手机验证码发送的实现示例
Nov 02 Redis
CentOS8.4安装Redis6.2.6的详细过程
Nov 20 Redis
详解Redis的三种常用的缓存读写策略步骤
May 06 Redis
Redis 异步机制
May 15 Redis
Redis基本数据类型Set常用操作命令
Jun 01 Redis
Redis实现短信验证码登录的示例代码
Jun 14 Redis
 Redis 串行生成顺序编码的方法实现
浅谈Redis 中的过期删除策略和内存淘汰机制
一文搞懂Redis中String数据类型
Apr 03 #Redis
使用Redis做预定库存缓存功能
sentinel支持的redis高可用集群配置详解
redis sentinel监控高可用集群实现的配置步骤
redis调用二维码时的不断刷新排查分析
Apr 01 #Redis
You might like
php加速器eAccelerator的配置参数、API详解
2014/05/05 PHP
PHP 实现代码复用的一个方法 traits新特性
2015/02/22 PHP
php生成网页桌面快捷方式
2017/05/05 PHP
php curl获取到json对象并转成数组array的方法
2018/05/31 PHP
PHP实现简单的计算器
2020/08/28 PHP
clientX,pageX,offsetX,x,layerX,screenX,offsetLeft区别分析
2010/03/12 Javascript
Javascript学习笔记之 函数篇(一) : 函数声明和函数表达式
2014/06/24 Javascript
js轮盘抽奖实例分析
2020/04/17 Javascript
Bootstrap基本样式学习笔记之标签(5)
2016/12/07 Javascript
微信小程序 Template详解及简单实例
2017/01/05 Javascript
微信小程序Server端环境配置详解(SSL, Nginx HTTPS,TLS 1.2 升级)
2017/01/12 Javascript
js常用DOM方法详解
2017/02/04 Javascript
基于BootStrap multiselect.js实现的下拉框联动效果
2017/07/28 Javascript
vue的过滤器filter实例详解
2018/09/17 Javascript
微信小程序使用swiper组件实现层叠轮播图
2018/11/04 Javascript
基于Vue SEO的四种方案(小结)
2019/07/01 Javascript
react实现同页面三级跳转路由布局
2019/09/26 Javascript
python聊天程序实例代码分享
2013/11/18 Python
分析python动态规划的递归、非递归实现
2018/03/04 Python
解决python大批量读写.doc文件的问题
2018/05/08 Python
Python实现的建造者模式示例
2018/08/06 Python
详解python:time模块用法
2019/03/25 Python
python3爬取torrent种子链接实例
2020/01/16 Python
python requests.get带header
2020/05/05 Python
python开发入门——set的使用
2020/09/03 Python
python实现图片,视频人脸识别(opencv版)
2020/11/18 Python
应聘教师自荐信
2013/10/12 职场文书
酒店出纳岗位职责
2013/12/29 职场文书
董事长秘书工作职责
2014/06/10 职场文书
建筑管理专业求职信
2014/07/28 职场文书
祖国在我心中演讲稿(小学生)
2014/09/23 职场文书
2015年禁毒工作总结
2015/04/30 职场文书
观看安全警示教育片心得体会
2016/01/15 职场文书
《西门豹》教学反思
2016/02/23 职场文书
TypeScript 使用 Tuple Union 声明函数重载
2022/04/07 Javascript
CentOS7环境下MySQL8常用命令小结
2022/06/10 Servers