通过redis-rdb-tools工具进行查询。
1、环境:centos7.x、python2.7.7
查询python版本:python -V
2、安装pip:
下载:wget https://bootstrap.pypa.io/get-pip.py
安装:python get-pip.py
查询版本:pip -V
3、安装redis-rdb-tools
下载:wget https://github.com/sripathikrishnan/redis-rdb-tools/archive/master.zip
解压:unzip master.zip
进入解压目录:cd redis-rdb-tools
安装:python setup.py install
或者直接使用pip安装:pip install rdbtools
4、查询redis配置
1、确保redis的配置文件(redis.conf)开启rdb备份
rdbcompression yes
dbfilename dump.rdb
2、找到备份文件
6、利用rdb-tools进行分析
查看分析结果:rdb -c memory dump.rdb
-l:使用该操作指定占用空间最大的key个数
eg:rdb -c memory -l 5 dump.rdb:显示占空间最大的前5个key
7、生成文件
rdb -c memory dump.rdb > result.csv
下载csv文件进行查阅。
也可以将文件导入到数据库通过数据库进行查看。
以mysql数据库为例见表语句如下:
CREATE TABLE `rdb` (
`DATABASE` int(11) DEFAULT NULL,
`type` varchar(128) DEFAULT NULL,
`KEY` varchar(128) DEFAULT NULL,
`size_in_bytes` int(11) DEFAULT NULL,
`encoding` varchar(128) DEFAULT NULL,
`num_elements` int(11) DEFAULT NULL,
`len_largest_element` varchar(128) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
附录:
redis-rdb-tools工具github地址:https://github.com/sripathikrishnan/redis-rdb-tools#generate-memory-report;
参考博文:https://blog.csdn.net/zhanghan18333611647/article/details/81268521;