redis源码剖析(十四)—— dump.rdb文件分析工具
分析rdb文件的工具
安装
git clone https://github.com/sripathikrishnan/redis-rdb-tools.git
sudo pip install --upgrade pip
sudo pip install python-lzf
分析以n开头的key
rdb --command justkeyvals --key "n*" /home/kou/redis_tar/redis-3.0-annotated/src/dump.rdb[kou@python ~]$ od -c /home/kou/redis_tar/redis-3.0-annotated/src/dump.rdb
0000000 R E D I S 0 0 0 6 376 \0 \0 004 n a m
0000020 e 005 h o d g e 377 004 | 313 025 = G % 310
0000040
json格式解析并输出
[kou@python ~]$ rdb --command json /home/kou/redis_tar/redis-3.0-annotated/src/dump.rdb
[{
"name":"hodge"}]
指定数据库,类型,格式,key
rdb -c json --db 2 --type hash --key "a.*"
生成内存报告
[kou@python ~]$ rdb -c memory /home/kou/redis_tar/redis-3.0-annotated/src/dump.rdb
database,type,key,size_in_bytes,encoding,num_elements,len_largest_element,expiry
0,string,name,56,string,5,5,
查找单键使用的内存
redis-memory-for-key -s localhost -p 6379 -a mypassword person:1
RDB文件转换为Redis协议流protocol
rdb --c protocol
您可以将输出通过管道传输到netcat并重新导入数据的子集。例如,如果要将数据分片到两个Redis实例中,则可以使用–key标志选择数据的子集,然后将输出传递给正在运行的Redis实例以加载该数据。阅读Redis Mass Insert以获得更多信息。
当输出打印协议时,该–escape选项可与一起使用printable或utf8避免使用不可打印/控制字符。
比较RDB文件
> rdb --command diff /var/redis/6379/dump1.rdb | sort > dump1.txt
> rdb --command diff /var/redis/6379/dump2.rdb | sort > dump2.txt
然后,运行您喜欢的差异程序> kdiff3 dump1.txt dump2.txt
分析结果
[kou@python ~]$ rdb --command justkeyvals --key "n*" /home/kou/redis_tar/redis-3.0-annotated/src/dump.rdbname hodge
redis源码剖析(十四)—— dump.rdb文件分析工具相关推荐
- redis源码剖析(四)跳表
文章目录 整数集合 跳跃表 压缩列表 总结 整数集合 当一个集合只包含整数,且这个集合的元素不多的时候,Redis 就会使用整数集合 intset .首先看 intset 的数据结构: typedef ...
- Redis源码剖析(四)过期键的删除策略
Redis是支持时间事件的,所谓时间事件,是为某个键值对设置过期时间,时间一到,Redis会自动删除该键值对.例如使用SET命令添加字符串类型的键值对 127.0.0.1:6379> SET b ...
- grpc-go源码剖析十四之round_robin平衡器原理介绍
本小节主要是介绍一下round_robin类型的平衡器的基本原理: 其实,就是如何处理两个场景: 场景一:跟grpc服务器端链接的策略是什么,比方说同一个服务,可能是由多个grpc服务器端提供的: ...
- 【Redis源码剖析】 - Redis持久化之RDB
原创作品,转载请标明:http://blog.csdn.net/xiejingfa/article/details/51553370 Redis源码剖析系列文章汇总:传送门 Redis是一个高效的内存 ...
- Redis源码剖析和注释(十六)---- Redis输入输出的抽象(rio)
Redis源码剖析和注释(十六)---- Redis输入输出的抽象(rio) . https://blog.csdn.net/men_wen/article/details/71131550 Redi ...
- redis源码剖析(十五)——客户端思维导图整理
redis源码剖析(十五)--客户端执行逻辑结构整理 加载略慢
- 【Redis源码剖析】 - Redis IO操作之rio
原创作品,转载请标明:http://blog.csdn.net/xiejingfa/article/details/51433696 Redis源码剖析系列文章汇总:传送门 Reids内部封装了一个I ...
- 【Redis源码剖析】 - Redis内置数据结构之压缩列表ziplist
在前面的一篇文章[Redis源码剖析] - Redis内置数据结构之双向链表中,我们介绍了Redis封装的一种"传统"双向链表list,分别使用prev.next指针来指向当前节点 ...
- GDAL源码剖析(四)之命令行程序说明二
接博客GDAL源码剖析(四)之命令行程序说明一http://blog.csdn.net/liminlu0314/article/details/6978589 其中有个nearblack,gdalbu ...
最新文章
- centos7 firewall 防火墙 命令
- [HAOI2015]按位或
- 关于java数据库章节connection连接不成功的时候!!!
- es6 依赖循环_探索 JavaScript 中的依赖管理及循环依赖
- 【采用】智能反欺诈算法概览及典型应用案例
- oracle 存储怎么使用,Oracle存储过程中如何使用数组(附范例)
- decimalformat精度丢失_php intval 两位小数乘以100后结果少1
- mvc试图 下拉框不重复_面试前不巩固一下基础知识、刷刷题吗?
- Java问题定位之如何借助线程堆栈进行问题分析
- java map存储格式_java HashMap HashSet的存储方式
- dnf手游找不到服务器,DNF手游无法连接服务器怎么办 无法连接服务器解决详解...
- 黎曼的zeta函数(0)
- vmware linux虚拟机中添加硬盘
- 重新加载script
- GateWay的Filter
- Pytorch:图像归一化
- 全国计算机等级考试二级Java模拟试卷
- C++OpenCV系统学习(17)——图像分割与抠图(6)——视频背景替换
- 5G(IMT-2020)简介
- 如何解决端口被占用的问题
热门文章
- PNG,GIF,JPG的区别及如何选
- 使用内存回流的方法来实现将image的内容转换为 byte[]
- 微信公众平台——被动回复用户消息
- [HNOI2015] 落忆枫音
- cocos2d-x3.0 相对布局(一)
- Visual Studio 配色方案
- 【Unity】Update()和FixedUpdate()
- 计算机本地网络如何共享,本地网络共享怎么实现
- 搭建自动安装的linux,RedHat7搭建无人值守自动安装Linux操作系统(PXE+Kickstart)
- dw空心圆项目符号_如何懂建筑施工图?搞懂这些符号解析,耐下性子研究不会学不会...