Redis 查看所有 key 的 value 值所占内存大小

redis 虽好,却是个吃内存兽,因此在写入 redis 数据时,应该避免写入无用的数据,浪费内存。

如果我们要分析哪些 key 占用了大量的存储空间,就需要有工具辅助对所有的 value 所点空间进行排序,如此才能有的放矢进行优化

redis-rdb-tools 可以将所有 key 对应的 value 大小用 csv 格式导出

安装如下:

$ pip install rdbtools python-lzf
$ git clone https://github.com/sripathikrishnan/redis-rdb-tools
$ cd redis-rdb-tools
$ sudo python setup.py install

接下来找到 redis 的 dump.rdb 位置

首先定位到 redis.conf 位置

$ whereis redis.conf
redis: /etc/redis.conf
$ cat /etc/redis.conf | grep dir | grep redis
dir /var/lib/redis
$ cat /etc/redis.conf | grep dump.rdb
dbfilename dump.rdb

综上,得知其路径为:/var/lib/redis/dump.rdb

按内存值导出 csv

$ rdb -c memory /var/lib/redis/dump.rdb > /tmp/redis.csv

结果如下:

本作品采用《CC 协议》,转载必须注明作者和本文链接
it书童
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 1

请问一下,我安装好了之后,怎么没有rdb这个命令呢?

4年前 评论
lovecn 4年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!