Redis 全局通用命令详解(keys、exists、del、expire、ttl、type 等)
Redis 通用命令是针对所有数据类型 Key生效的基础命令,是日常操作、数据维护、过期控制的核心,必须熟练掌握。
1. KEYS 查看所有键
语法:KEYS 匹配规则
示例:
KEYS * # 查询当前库所有key
KEYS user* # 查询以user开头的key
注意:生产环境禁止使用 KEYS *,遍历所有 key 会阻塞主线程,引发服务卡顿,生产用 SCAN 替代。
2. EXISTS 判断 key 是否存在
语法:EXISTS key [key2...]
返回值:存在的 key 数量
示例:EXISTS name
返回1存在,0不存在,支持批量判断多个key
3. DEL 删除 key
语法:DEL key [key2...]
返回值:成功删除的 key 数量
示例:DEL name age
支持批量删除,删除后数据直接清空,不可恢复
4. EXPIRE 设置 key 过期时间(秒)
语法:EXPIRE key 秒数
示例:EXPIRE token 3600 # token 1小时后过期
拓展:PEXPIRE key 毫秒数,设置毫秒级过期
5. TTL 查看 key 剩余过期时间
语法:TTL key
返回值说明:
- 正数:剩余过期秒数
- -1:永久有效,无过期时间
- -2:key 不存在
拓展:PTTL 查看毫秒级剩余时间
6. TYPE 查看 key 数据类型
语法:TYPE key
返回:string / list / set / hash / zset
用于快速判断 key 类型,避免命令使用错误
7. PERSIST 取消 key 过期时间
语法:PERSIST key
将有过期时间的 key 改为永久有效
8. RENAME 重命名 key
语法:RENAME 旧key 新key
若新key已存在,会直接覆盖,谨慎使用
9. SCAN 迭代查询 key(生产安全)
替代 KEYS 命令,非阻塞式迭代查询,适配生产环境批量查询 key
语法:SCAN 游标 MATCH 规则 COUNT 数量
