首页/数据/数据库速查/DEL / UNLINK 删除键
Redis 命令96 条

DEL / UNLINK 删除键

DEL 同步删除并返回删除键数;UNLINK 异步回收内存(大 key 场景不阻塞主线程),删除效果相同但内存稍后释放。

数据库速查数据更新于 2026-10-12
DEL key [key ...]同步删除,返回删除个数
UNLINK key [key ...]异步删除(4.0+)
返回实际删除的键数量

示例

示例
SET k1 v1
SET k2 v2
DEL k1 k2         # 2
DEL k1            # 0(已不存在)
# 大 key 用 UNLINK:SET big 值很大
UNLINK big:sorted:set   # 立即返回 1,内存后台回收
MEMORY USAGE big:sorted:set   # nil(键已不可见)
大 key(几十 MB 的 Hash/ZSet)用 DEL 会卡主线程;运维清理大 key 一律 UNLINK,或分片式 HDEL/ZREM 渐进删除。

易错点

  • 对几百万成员的 ZSet 直接 DEL:阻塞可达数百毫秒,监控上就是周期性毛刺
  • 以为 UNLINK 返回后内存已释放:内存回收是异步的,capacity 指标会滞后

数据来源与参考

  • Redis 官方文档: DEL
  • Redis 官方文档: UNLINK

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌