暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

如何清理Redis中Hash类型的key

运维笔谈 2025-04-14
117

最近朋友的Redis服务器内存块爆炸了,我检查了他Redis有些key是一直保留的,建议他清掉一些不必要的数据,有几个key是Hash类型的,假如我们要清理 Redis 中类型为 Hash 的键,该怎么做呢?,我们可以根据实际情况进行完全删除或者部分删除处理。

1. 完全删除整个 Key(包括所有字段)

使用 `DEL` 命令直接删除整个 Hash 键:

      #bash
      DEL xxx_uffr_latest_index

    适用场景:如果这个 Key 不再需要,可以直接删除。

    2. 仅删除 Hash 中的部分或全部字段

       - 删除单个字段:

       #bash
       HDEL sharedrive_uffr_latest_index field1 field2 ...

         - 删除所有字段(需要遍历字段):

        # 获取所有字段并逐个删除(适用于字段较少的情况)
        HKEYS xxxx_uffr_latest_index | xargs -L 100 redis-cli HDEL sharedrive_uffr_latest_index

        如果字段数量庞大,建议用 `HSCAN` 分批次清理,避免阻塞 Redis。

        注意事项

        1. 生产环境谨慎操作:`DEL` 或大量 `HDEL` 可能影响性能,建议在低峰期操作。

        2. 备份:删除前可用 `HGETALL` 备份数据:

          HGETALL xxxx_uffr_latest_index

          文章转载自运维笔谈,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

          评论