Redis 所有命令有哪些?

Redis(Remote Dictionary Server)是一个开源的、基于内存的高性能键值数据库,常用于缓存、消息队列、实时统计等场景,它支持多种数据结构,如字符串(String)、哈希(Hash)、列表(List)、集合(Set)、有序集合(Sorted Set)等,每种数据结构都有对应的命令集,以下是Redis常用命令的详细介绍,涵盖数据操作服务器管理、持久化、事务等功能,并辅以表格形式归纳核心命令,最后附相关FAQs解答。

redis 所有命令
(图片来源网络,侵删)

字符串(String)操作命令

字符串是Redis最基本的数据结构,可以存储文本、JSON、序列化对象等,常用命令包括:

  • SET key value [EX seconds] [PX milliseconds]:设置键值对,可指定过期时间(EX秒或PX毫秒)。
  • GET key:获取键对应的值。
  • DEL key [key ...]:删除一个或多个键。
  • INCR key:将键的值加1(值必须为整数)。
  • DECR key:将键的值减1。
  • EXPIRE key seconds:设置键的过期时间(秒)。
  • TTL key:查看键的剩余过期时间(秒),-1表示永不过期,-2表示键不存在。

示例
SET user:1:name "Alice" EX 3600(设置键并1小时后过期)
GET user:1:name(返回”Alice”)

哈希(Hash)操作命令

哈希是键值对集合,适合存储对象(如用户信息),常用命令:

  • HSET key field value:设置哈希表中字段值。
  • HGET key field:获取哈希表中字段值。
  • HGETALL key:获取哈希表中所有字段和值。
  • HDEL key field [field ...]:删除哈希表中指定字段。
  • HINCRBY key field increment:将字段值增加指定整数。

示例
HSET user:1 age 25 city "Beijing"
HGETALL user:1(返回age:25, city:”Beijing”)

redis 所有命令
(图片来源网络,侵删)

列表(List)操作命令

列表是字符串元素的有序集合,支持双向操作,常用作队列,命令:

  • LPUSH key value [value ...]:将值插入列表头部。
  • RPUSH key value [value ...]:将值插入列表尾部。
  • LPOP key:移除并返回列表头部元素。
  • RPOP key:移除并返回列表尾部元素。
  • LRANGE key start stop:获取列表指定范围内的元素(0表示第一个,-1表示最后一个)。

示例
LPUSH queue "task1"(列表头部添加”task1″)
LRANGE queue 0 -1(返回所有元素)

集合(Set)操作命令

集合是无序且唯一的字符串元素集合,支持交集、并集等操作,命令:

  • SADD key member [member ...]:向集合添加成员。
  • SMEMBERS key:返回集合中所有成员。
  • SREM key member [member ...]:移除集合中指定成员。
  • SINTER key [key ...]:返回多个集合的交集。
  • SUNION key [key ...]:返回多个集合的并集。

示例
SADD tags "redis" "database"
SMEMBERS tags(返回”redis”, “database”)

redis 所有命令
(图片来源网络,侵删)

有序集合(Sorted Set)操作命令

有序集合是带分数(score)的成员集合,成员按分数排序,命令:

  • ZADD key score member [score member ...]:添加成员并指定分数。
  • ZRANGE key start stop [WITHSCORES]:返回指定排名范围内的成员(按分数升序)。
  • ZREVRANGE key start stop [WITHSCORES]:按分数降序返回成员。
  • ZSCORE key member:获取成员的分数。
  • ZINCRBY key increment member:增加成员的分数。

示例
ZADD leaderboard 100 "Alice" 200 "Bob"
ZRANGE leaderboard 0 -1 WITHSCORES(返回Alice:100, Bob:200)

键管理命令

  • KEYS pattern:匹配符合模式的键(生产环境慎用,性能开销大)。
  • EXISTS key [key ...]:检查键是否存在。
  • TYPE key:返回键的数据类型。
  • RENAME key newkey:重命名键。
  • RANDOMKEY:随机返回一个键。

服务器与持久化命令

  • INFO [section]:返回服务器信息(如内存、客户端连接)。
  • SAVE:同步保存数据到磁盘(阻塞操作)。
  • BGSAVE:异步保存数据到磁盘。
  • FLUSHDB:清空当前数据库。
  • FLUSHALL:清空所有数据库。

事务与脚本命令

  • MULTI:开启事务。
  • EXEC:执行事务中的命令。
  • DISCARD:取消事务。
  • EVAL script numkeys key [key ...] arg [arg ...]:执行Lua脚本。

示例
MULTI
SET temp 100
INCR temp
EXEC(原子性执行)

核心命令速查表

数据结构常用命令功能描述
StringSET, GET, INCR, EXPIRE设置、获取、递增、设置过期时间
HashHSET, HGET, HGETALL设置字段、获取字段值、获取所有字段
ListLPUSH, RPUSH, LPOP头部/尾部插入、头部弹出
SetSADD, SMEMBERS, SINTER添加成员、获取所有成员、交集运算
Sorted SetZADD, ZRANGE, ZSCORE添加成员并设分数、按范围获取成员、获取分数

相关问答FAQs

Q1: Redis如何避免KEYS命令导致的性能问题?
A: KEYS pattern会阻塞服务器,生产环境建议使用SCAN cursor [MATCH pattern] [COUNT count]命令。SCAN是游标式遍历,非阻塞且可分批返回结果,例如SCAN 0 MATCH user:* COUNT 100

Q2: Redis持久化机制RDB和AOF如何选择?
A: RDB(Redis Database)通过快照定期保存数据,恢复速度快但可能丢失最后一次快照后的数据;AOF(Append Only File)记录所有写命令,数据安全性高但文件较大且恢复慢,建议:

  • 对数据安全性要求高:开启AOF(可配置appendfsync everysec)。
  • 对性能要求高:使用RDB,或两者结合(同时开启RDB和AOF,AOF优先级更高)。

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/375261.html<

(0)
运维的头像运维
上一篇2025-10-01 04:52
下一篇 2025-10-01 05:04

相关推荐

  • Linux MySQL命令参数有哪些常用选项?

    Linux环境下MySQL命令参数的掌握是数据库管理和开发的基础,无论是日常运维还是数据操作,都需要熟练运用这些参数来高效完成任务,MySQL命令行工具(mysql)提供了丰富的参数选项,允许用户连接服务器、执行SQL脚本、配置输出格式等,以下将从连接参数、执行参数、输出控制、安全选项及其他常用参数五个维度,详……

    2025-11-17
    0
  • Xshell常用命令有哪些?

    xshell作为一款功能强大的终端模拟软件,广泛应用于服务器管理和远程操作中,其内置的常用命令能极大提升工作效率,以下从基础操作、文件传输、会话管理、高级功能等维度,详细解析xshell的常用命令及使用技巧,基础操作命令在xshell中,基础命令是日常运维的核心,主要包括连接管理、终端控制及常用系统命令,连接管……

    2025-11-15
    0
  • 命令分哪些类型?

    命令的种类可以从不同维度进行划分,根据其执行主体、功能性质、应用场景以及交互方式等,可以细分为多种类型,以下从几个主要角度详细展开说明, 按执行主体划分这是最直观的分类方式,主要区分命令发出者和执行者,系统命令由操作系统内核或系统级程序发出,用于管理硬件资源、调度进程、维护系统运行等,这类命令通常具有最高权限……

    2025-11-15
    0
  • CAD英文版命令有哪些?

    CAD英文版命令是计算机辅助设计(Computer-Aided Design)软件中用于绘制、编辑和修改图形的核心工具,掌握这些命令能显著提高设计效率和精度,以下将详细介绍常用CAD英文版命令的分类、功能及操作方法,并通过表格形式归纳关键命令,帮助用户系统化学习,绘图类命令绘图类命令是CAD中最基础的功能,用于……

    2025-11-14
    0
  • Redis服务器命令有哪些常用操作?

    Redis 是一个高性能的内存数据库,常用于缓存、消息队列、实时统计等场景,掌握 Redis 服务器命令是高效使用 Redis 的基础,以下从连接管理、键值操作、数据类型操作、服务器管理等方面详细介绍常用命令,连接管理是使用 Redis 的第一步,通过 redis-cli 命令可以连接到 Redis 服务器,r……

    2025-11-14
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注