gpt4 book ai didi

redis - 如何删除与 Redis 集群中的模式匹配的键

转载 作者:IT王子 更新时间:2023-10-29 06:08:27 24 4
gpt4 key购买 nike

我试过这个question中的方法, 但它不起作用,因为我在集群模式下工作,redis 告诉我:

(error) CROSSSLOT Keys in request don't hash to the same slot

最佳答案

关于 question 的答案尝试在单个 DEL 中删除多个键。然而,匹配给定模式的键可能不在同一个槽中,如果这些键不属于同一个槽,Redis 集群不支持多键命令。这就是您收到错误消息的原因。

为了解决这个问题,您需要一个接一个地DEL这些键:

redis-cli --scan --pattern "foo*" |xargs -L 1 redis-cli del

xargs 命令的 -L 选项指定要删除的键的数量。您需要将此选项指定为 1

为了删除所有与模式匹配的键,您还需要为集群中的每个主节点运行上述命令。

注意

  1. 使用这个命令,你必须一个一个地删除这些键,这可能会很慢。您需要考虑重新设计您的数据库,并使用hash-tags 使与模式匹配的键属于同一个槽。这样您就可以在单个 DEL 中删除这些 key 。

  2. SCANKEYS 命令效率低下,尤其是 KEYS 不应在生产中使用。您需要考虑为这些键构建索引。

关于redis - 如何删除与 Redis 集群中的模式匹配的键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53716223/

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