获取Redis中哈希表的所有键

3

请问有谁可以告诉我如何获取此示例中的所有类别和所有用户?

hmset category:1 name opera description music year 1573

成功

hmset category:2 name snowsports description sport Tmembers groups

成功

hmset category:3 name java description language year 1995

成功

hmset user:1 name jack age 23 country france

成功

hmset user:2 name john age 25 country Uk

成功

hmset user:3 name julia age 27 country england

1个回答

2
在这个例子中,你需要执行以下操作:
KEYS 'category:*'
KEYS 'user:*'

如果您需要在生产环境中运行此操作,请使用SCAN命令,而不是keys命令。假设此操作在您的Redis实例的db 0中:
SCAN 0 match 'category:*'
SCAN 0 match 'user:*'

谢谢您的回复,我尝试了这个命令(SCAN 0 match 'category:'),并且答案是 SCAN 0 match 'category:' 1)“114688” 2)(空列表或集合) 怎样知道数据库中的数量? - user3401678
无论你连接到哪个,你都可以使用SELECT命令(http://redis.io/commands/SELECT)来选择一个。INFO命令(http://redis.io/commands/INFO)可以提供一些关于正在使用的信息。 - Eli
3
@Eli,请不要建议使用KEYS命令——它应被视为一项调试命令。 - Itamar Haber
@ItamarHaber 我并没有提出其他建议。我上面的回答已经很明确了。 - Eli
4
这个命令的顺序会误导人们,他们倾向于只读第一行就匆忙尝试。KEYS是有害的,它可能会在瞬间让你的Redis服务器崩溃,所以它应该被视为最后的手段,如果确实需要使用的话。我认为默认的redis.conf应该将它重命名为666-your-immortal-soul,这样我们就清楚了 ;) - Itamar Haber

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接