gpt4 book ai didi

redis - 如何在一个命令中批量删除redis键

转载 作者:行者123 更新时间:2023-12-04 08:25:13 24 4
gpt4 key购买 nike

现在我连接到redis,找到一些像这样的键:

> keys "user:login:user:*"
user:login:user:62668
user:login:user:61970
user:login:user:63586

......

现在我想删除这个键,我试过:

keys "user:login:user:*" | xargs del

keys "user:login:user:*" | del

keys "user:login:user:*" | redis-cli xargs del

两个都不行,怎么一次性批量删除?

最佳答案

更好的方式

虽然@Guy Korland 回答了问题,但那样可能会造成长期阻塞。我们应该始终记住redis使用单线程来操作数据,所以如果你有很多键匹配user:login:user:*或者每个键的类型都是listset, hash, sorted_set 有很多元素。删除过程会耗费大量时间,redis无法响应其他命令。

redis-cli --scan --pattern users:* | xargs redis-cli unlink

使用scan && unlink代替keys && del可以避免阻塞。

关于scankeysunlinkdel的区别:

scan vs keys
del vs unlink

关于redis - 如何在一个命令中批量删除redis键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65300650/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com