Redis里想看所有数据其实没那么难,几招教你轻松搞定各种查看方法
- 问答
- 2026-01-05 04:52:34
- 24
综合自CSDN博客、掘金社区、知乎问答以及Redis官方文档的常见用法总结)
想在Redis里看看都存了些什么数据,这个想法很自然,但Redis本身不像关系型数据库那样有像SELECT * FROM table这样的万能查询语句,不过别担心,方法总比困难多,掌握下面这几招,你就能轻松浏览Redis里的数据了。
第一招:钥匙环法——先用KEYS命令摸清家底
既然Redis是键值数据库,那我们首先得知道库里都有哪些“钥匙”(Key),这时候,KEYS命令就派上用场了,它的用法很简单,就像在电脑里搜索文件一样,支持通配符。

KEYS *:这可能是最常用的命令了,它会列出当前数据库中的所有键,如果你的数据量不大,用这个一眼就能看清全貌。KEYS user:*:如果你记得键的大致模式,比如所有用户信息都以"user:"开头,那么用这个命令就能筛选出所有相关的键,问号代表一个字符,比如KEYS user:?会匹配像"user:1", "user:2"这样的键。
这里有个非常重要的提醒(来源:Redis官方文档警告以及众多运维经验分享):KEYS命令在生产环境中要极其谨慎地使用,因为Redis是单线程的,当你的键数量非常庞大时,KEYS *可能会阻塞服务器一段时间,导致其他所有请求都无法处理,这可能引发严重的线上故障,它更适合在测试环境或者数据量确凿不多的情况下使用。
第二招:安全侦察兵——SCAN命令迭代扫描
为了解决KEYS命令的阻塞问题,Redis从2.8版本开始提供了SCAN命令(来源:Redis官方文档),它可以渐进式地、非阻塞地遍历所有键。
SCAN命令的工作原理有点像分页查询,你第一次执行SCAN 0,它会返回一部分键和一个新的游标(比如38),然后你再用SCAN 38去获取下一批,直到返回的游标是0,表示遍历结束。

SCAN 0 COUNT 100:从游标0开始,每次大概返回100个键。COUNT参数只是给服务器的一个提示,不一定精确返回指定数量,但能有效控制每次循环的数据量。SSCAN,HSCAN,ZSCAN:这几个是用于集合(Set)、哈希(Hash)、有序集合(Sorted Set)这种复杂数据类型的,可以遍历它们内部的元素,当你想查看某个大Key里面具体存了什么时非常有用。
SCAN是安全浏览生产环境的首选工具,因为它不会卡住整个数据库。
第三招:逐个击破——用TYPE和对应命令查看值
通过KEYS或SCAN找到键名后,我们自然想知道它对应的“值”是什么,但值有不同的数据类型,需要用不同的命令来查看。
- 先看类型:用
TYPE your_key命令看看这个键是字符串(string)、列表(list)、哈希(hash)、集合(set)还是有序集合(zset)。 - 再用对应命令获取值:
- 字符串(string):最简单,直接用
GET key。 - 哈希(hash):
HGETALL key可以获取这个哈希的所有字段和值,如果字段很多,也可以用HSCAN来分批遍历,或者HKEYS只查看所有字段名。 - 列表(list):
LRANGE key 0 -1可以列出列表里从第一个到最后一个的所有元素。 - 集合(set):
SMEMBERS key可以查看集合中的所有成员,同样,大集合建议用SSCAN。 - 有序集合(zset):
ZRANGE key 0 -1 WITHSCORES可以列出所有成员及其分数。
- 字符串(string):最简单,直接用
第四招:图形化利器——借助第三方工具

如果你觉得命令行不够直观,还有很多优秀的图形化界面(GUI)工具可以帮助你(来源:如知乎、掘金上开发者们的常用工具推荐),
- RedisInsight:这是Redis官方推出的可视化工具,界面现代,功能强大,可以轻松地浏览键、查看不同类型的数据结构、执行命令甚至分析内存使用情况,对新手非常友好。
- Another Redis Desktop Manager:一款开源的桌面管理器,连接和管理都很方便,支持Windows、macOS、Linux。
- medis:一款macOS上设计精美的Redis客户端。
使用这些工具,就像使用Navicat看MySQL一样,点点鼠标就能看到数据和结构,非常方便。
想看Redis的所有数据,思路是“先找键,再查值”,核心步骤是:
- 列出键:数据量小或测试环境用
KEYS,生产环境务必用SCAN。 - 判断类型:对感兴趣的键使用
TYPE命令。 - 获取值:根据类型,使用
GET、HGETALL、LRANGE等对应命令,对于大Value,考虑使用HSCAN等遍历命令避免阻塞。 - 寻求便利:日常开发和管理,强烈推荐使用RedisInsight等图形化工具,效率倍增。
尤其是在正式服务器上,避免使用可能引起阻塞的命令(如KEYS *, FLUSHALL, 一次性获取巨大的SMEMBERS等),是一个良好的习惯,希望这几招能帮你轻松搞定Redis的数据查看问题!
本文由太叔访天于2026-01-05发表在笙亿网络策划,如有疑问,请联系我们。
本文链接:https://www.haoid.cn/wenda/74747.html
