当前位置: 代码网 > it编程>数据库>Redis > Redis中的通用命令解读

Redis中的通用命令解读

2025年07月29日 Redis 我要评论
select 0~15 切换数据库以下是基于图片中「redis通用命令」的示例讲解,结合具体场景说明每个命令的用法及注意事项:1. keys(查找键)命令格式:keys pattern示例:keys

select 0~15 切换数据库

以下是基于图片中「redis通用命令」的示例讲解,结合具体场景说明每个命令的用法及注意事项:

1. keys(查找键)

  • 命令格式keys pattern

示例

keys user:*      # 查找所有以"user:"开头的键
keys *           # 查找所有键(慎用!)

作用

  • 模糊匹配键名,适合开发环境调试。

风险

  • 生产环境避免使用!若数据量大(如百万级key),会阻塞redis单线程,导致服务短暂不可用。
  • 替代方案:用 scan命令分批次遍历(非阻塞)。

2. del(删除键)

  • 命令格式del key [key ...]

示例

del user:123      # 删除单个键
del user:123 user:456  # 批量删除

返回值

  • 成功删除的键数量(如 (integer) 1)。

注意

删除不存在的键会返回 0,但不会报错。

3. exists(判断键是否存在)

  • 命令格式exists key

示例

exists cache:homepage # 检查缓存是否存在

返回值

  • 1(存在)或 0(不存在)。
  • 支持批量检查:exists key1 key2返回存在的总数量。

4. expire(设置键有效期)

  • 命令格式expire key seconds 单位是秒

示例

set session:abc "user_data"
expire session:abc 3600  # 1小时后自动删除

典型场景

  • 会话(session)管理、临时验证码缓存。

扩展命令

  • pexpire:以毫秒为单位设置。
  • expireat:指定过期时间戳(如 expireat key 1730000000)。

5. ttl(查看剩余有效期)

  • 命令格式ttl key

示例

  • ttl session:abc # 返回剩余秒数

返回值

  • -2:键不存在。
  • -1:键存在但未设置有效期。 就是永久生效
  • 正整数:剩余时间(秒)。

6. help(查看命令帮助)

  • 命令格式help command

示例

help del    # 查看del命令的详细说明
help expire
  • 输出内容

包括命令语法、简介、版本支持、所属组(如 group: generic)。

综合示例场景

假设开发一个用户登录系统:

# 1. 存储用户登录令牌(有效期30分钟)
 set token:abc123 "user_id_456"
 expire token:abc123 1800
 
 # 2. 检查令牌是否有效
 exists token:abc123  # 返回1
 ttl token:abc123     # 返回剩余时间(如1752秒)
 
 # 3. 用户退出时删除令牌
 del token:abc123     # 返回1(删除成功)
 
 # 4. 安全清理测试数据(开发环境)
 keys test:*          # 查找所有测试键
 del $(redis-cli keys "test:*")  # 批量删除(生产环境禁用!)

关键注意事项

生产环境禁忌

  • 禁用 keys *,用 scan替代。
  • 慎用 flushdb/flushall(清空数据库)。

性能优化

  • 批量操作(如 del key1 key2)比循环单次操作更高效。

文档参考

  • 所有命令官方文档可通过 help或 redis官网查看。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。 

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com