Redis 是一种高性能的键值存储系统,广泛应用于缓存、消息队列、会话管理等场景,掌握 Redis 命令是高效使用 Redis 的基础,以下是常用 Redis 命令的详细说明及分类介绍,帮助开发者快速查阅和应用。

字符串(String)操作
字符串是 Redis 最基本的数据类型,支持二进制安全的数据存储,常用命令包括:
SET key value [EX seconds] [PX milliseconds]:设置键值对,可指定过期时间(EX 为秒,PX 为毫秒)。GET key:获取键对应的值。INCR key:将键的值加 1(值需为整数)。DECR key:将键的值减 1。APPEND key value:向键的值追加内容。SETEX key seconds value:设置键值对并指定过期时间(单位秒)。
哈希(Hash)操作
哈希是键值对集合,适合存储对象结构,常用命令包括:
HSET key field value:设置哈希表中字段的值。HGET key field:获取哈希表中指定字段的值。HGETALL key:获取哈希表的所有字段和值。HINCRBY key field increment:为哈希表中字段的值加上指定增量。HEXISTS key field:检查字段是否存在。
列表(List)操作
列表是字符串元素的有序集合,支持双向操作,常用命令包括:
LPUSH key value [value ...]:将一个或多个值插入列表头部。RPUSH key value [value ...]:将一个或多个值插入列表尾部。LPOP key:移除并返回列表头部的元素。RPOP key:移除并返回列表尾部的元素。LRANGE key start stop:获取列表中指定范围的元素(0 表示第一个,-1 表示最后一个)。
集合(Set)操作
集合是无序的唯一字符串元素集合,常用命令包括:

SADD key member [member ...]:向集合添加一个或多个成员。SMEMBERS key:返回集合中的所有成员。SREM key member [member ...]:移除集合中的一个或多个成员。SISMEMBER key member:判断成员是否在集合中。SCARD key:返回集合中元素的数量。
有序集合(Sorted Set)操作
有序集合是带有分数的成员集合,成员按分数排序,常用命令包括:
ZADD key score member [score member ...]:向有序集合添加成员及其分数。ZRANGE key start stop [WITHSCORES]:返回指定范围内的成员(按分数升序)。ZREVRANGE key start stop [WITHSCORES]:返回指定范围内的成员(按分数降序)。ZSCORE key member:获取成员的分数。ZINCRBY key increment member:增加成员的分数。
键管理命令
KEYS pattern:查找匹配模式的键(生产环境慎用,可能阻塞服务器)。EXISTS key:检查键是否存在。DEL key [key ...]:删除一个或多个键。TTL key:返回键的剩余过期时间(秒)。EXPIRE key seconds:设置键的过期时间。
示例表格:常用命令对比
| 命令类型 | 命令示例 | 功能描述 |
|---|---|---|
| 字符串 | SET user:1:name Alice |
设置键值对 |
| 哈希 | HSET user:1 age 25 |
设置哈希字段 |
| 列表 | LPUSH messages "Hello" |
向列表头部添加元素 |
| 集合 | SADD tags redis "db" |
向集合添加成员 |
| 有序集合 | ZADD leaderboard 100 "Alice" |
添加成员及分数 |
相关问答 FAQs
Q1: Redis 如何设置键的过期时间?
A1: 可通过 EXPIRE key seconds 命令设置键的过期时间(单位秒),或在 SET 命令中使用 EX 参数(如 SET key value EX 60 表示 60 秒后过期),过期后键会被自动删除,适用于缓存等临时数据场景。
Q2: 如何查看 Redis 中所有的键?
A2: 使用 KEYS * 命令可查看所有键,但该命令会阻塞服务器,生产环境建议使用 SCAN cursor [MATCH pattern] [COUNT count] 命令(如 SCAN 0 MATCH user:* COUNT 10),通过游标分批遍历键,避免性能问题。
