Redis中的通用命令解读

 更新时间:2025年07月29日 09:28:59   作者:Saness1y  
这篇文章主要介绍了Redis中的通用命令,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

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官网查看。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。 

相关文章

  • redis+lua实现分布式限流的示例

    redis+lua实现分布式限流的示例

    本文主要介绍了redis+lua实现分布式限流的示例,可以实现复杂的限流逻辑,如滑动窗口限流,并且避免了多步操作导致的并发问题,具有一定的参考价值,感兴趣的可以了解一下
    2025-03-03
  • Redis基本数据类型List常用操作命令

    Redis基本数据类型List常用操作命令

    这篇文章主要为大家介绍了Redis数据类型List常用命令操作,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-05-05
  • Redis安装图文教程(Windows和Linux)

    Redis安装图文教程(Windows和Linux)

    这篇文章主要介绍了Redis安装教程(Windows和Linux),本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-03-03
  • Redis客户端工具之RedisInsight的下载方式

    Redis客户端工具之RedisInsight的下载方式

    RedisInsight是Redis官方提供的图形化客户端工具,下载步骤包括访问Redis官网、选择RedisInsight、下载链接、注册信息、安装并测试连接
    2025-03-03
  • Redis基于Bitmap实现用户签到功能

    Redis基于Bitmap实现用户签到功能

    很多应用上都有用户签到的功能,尤其是配合积分系统一起使用。本文主要介绍了Redis基于Bitmap实现用户签到功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-06-06
  • 无法连接redis服务器问题的解决办法(非常详细!)

    无法连接redis服务器问题的解决办法(非常详细!)

    这篇文章主要介绍了如何解决Spring Boot项目连接Redis失败的问题,通过修改Redis配置文件、添加防火墙白名单或关闭防火墙,并使用RESP工具进行测试,需要的朋友可以参考下
    2025-02-02
  • springboot中操作redis实例分享

    springboot中操作redis实例分享

    本文介绍了如何在Spring Boot应用中整合Redis缓存技术,包括配置Redis连接、定义Redis模板、实现Redis的基本操作以及使用Spring Cache注解。这些内容可帮助开发者快速掌握Spring Boot与Redis的集成,并提高应用性能。
    2023-06-06
  • php结合redis实现高并发下的抢购、秒杀功能的实例

    php结合redis实现高并发下的抢购、秒杀功能的实例

    下面小编就为大家带来一篇php结合redis实现高并发下的抢购、秒杀功能的实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-12-12
  • redis执行lua脚本的实现

    redis执行lua脚本的实现

    本文主要介绍了redis执行lua脚本的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-10-10
  • Redis数据导入导出以及数据迁移的4种方法详解

    Redis数据导入导出以及数据迁移的4种方法详解

    这篇文章主要介绍了Redis数据导入导出以及数据迁移的4种方法详解,需要的朋友可以参考下
    2020-02-02

最新评论