Redis常见命令


1. String(字符串)

Redis 的 String 类型用来存储简单的字符串、数字、二进制数据等,每个 key 对应一个 value,最大可存储 512MB。

命令作用
SET key value设置 key 的值为 value
GET key获取 key 的值
MSET key1 value1 key2 value2 ...批量设置多个键值对
MGET key1 key2 ...批量获取多个 key 的值
APPEND key value追加字符串 value 到 key 原值末尾
STRLEN key获取 key 存储字符串的长度
INCR key将 key 对应的数字值加 1(适用于整型字符串)
DECR key将 key 对应的数字值减 1
INCRBY key increment将 key 的值增加指定的 increment
INCRBYFLOAT key increment将 key 的值增加指定的浮点数 increment

示例

SET user:1001 "Alice"
GET user:1001               # 返回 "Alice"

MSET key1 "hello" key2 "world"
MGET key1 key2              # 返回 ["hello", "world"]

APPEND user:1001 " Smith"
GET user:1001               # 返回 "Alice Smith"

STRLEN user:1001            # 获取字符串长度,如返回 11

SET counter 10
INCR counter                # counter 变为 11
DECR counter                # counter 变为 10
INCRBY counter 5            # counter 变为 15
INCRBYFLOAT counter 2.5     # counter 变为 17.5

2. Hash(哈希)

Redis 的 Hash 类型是一种键值对集合,类似于一个小型的哈希表(字典),非常适合存储对象数据,如用户信息(id、name、age 等)。

命令作用
HSET key field value设置哈希表 key 中字段 field 的值,如果存在则覆盖
HGET key field获取哈希表 key 中字段 field 的值
HMSET key field1 value1 field2 value2 ...批量设置多个字段(已废弃,推荐多次调用 HSET)
HMGET key field1 field2 ...批量获取多个字段的值
HDEL key field1 field2 ...删除哈希表 key 中的一个或多个字段
HEXISTS key field检查 key 中是否存在 field 字段,存在返回 1,否则返回 0
HKEYS key获取哈希表 key 中的所有字段名(keys)
HVALS key获取哈希表 key 中的所有值(values)
HGETALL key获取哈希表 key 中的所有字段及其值
HLEN key获取哈希表 key 中的字段数量
HINCRBY key field increment将 key 的 field 值增加 increment(可为负数)
HINCRBYFLOAT key field increment对 key 的 field 进行浮点数递增

示例

# 设置和获取哈希字段
HSET user:1001 name "Alice" age 25
HGET user:1001 name           # 返回 "Alice"

# 计数增量
HINCRBY user:1001 age 1       # 将 age 加 1,变为 26

# 获取整个哈希表
HGETALL user:1001             # 返回所有字段及值,如 {name: "Alice", age: 26}

# 删除字段
HDEL user:1001 age            # 删除 age 字段

# 判断字段是否存在
HEXISTS user:1001 name        # 存在返回 1

3. Set(集合)

Redis 的 Set 类型用于存储无序且不重复的元素集合,常用于去重或关系交集、并集等操作。

命令作用
SADD key value向集合 key 中添加一个或多个元素
SREM key value从集合 key 中移除指定元素
SMEMBERS key获取集合 key 中的所有成员
SISMEMBER key value判断 value 是否是集合 key 的成员,存在返回 1
SCARD key获取集合 key 中的成员数量

示例

SADD myset "apple" "banana" "cherry"
SISMEMBER myset "apple"     # 返回 1
SMEMBERS myset              # 返回 ["apple", "banana", "cherry"]
SREM myset "banana"
SCARD myset                 # 返回集合成员数量,如 2

4. ZSet(有序集合)

Redis 的 ZSet 类型存储有序的集合,每个元素关联一个分数,常用于排行榜、权重排序等场景。

命令作用
ZADD key score value添加元素 value 并赋予分数 score
ZREM key value从有序集合中移除指定元素
ZRANGE key start stop [WITHSCORES]获取指定排名区间内的元素,可选返回分数
ZRANK key value获取 value 在有序集合中的排名(从 0 开始)
ZINCRBY key increment value将元素 value 的分数增加 increment

示例

ZADD leaderboard 100 "Alice"
ZADD leaderboard 200 "Bob"
ZRANK leaderboard "Alice"    # 返回 0(表示第一名)
ZRANGE leaderboard 0 -1 WITHSCORES  # 返回所有成员及分数,如 [("Alice", 100), ("Bob", 200)]
ZINCRBY leaderboard 50 "Alice" # Alice 的分数变为 150
ZREM leaderboard "Bob"         # 移除 Bob

5. List(列表)

Redis 的 List 类型是按插入顺序排序的字符串列表,常用于实现消息队列、任务队列等。

命令作用
LPUSH key value从列表左侧(头部)插入元素
RPUSH key value从列表右侧(尾部)插入元素
LPOP key从列表左侧弹出(并返回)一个元素
RPOP key从列表右侧弹出(并返回)一个元素
LRANGE key start stop获取列表中指定区间的元素
LLEN key获取列表的长度

示例

LPUSH mylist "apple" "banana"    # 列表顺序为 ["banana", "apple"]
RPUSH mylist "cherry"            # 列表顺序为 ["banana", "apple", "cherry"]
LRANGE mylist 0 -1               # 返回整个列表 ["banana", "apple", "cherry"]
LPOP mylist                      # 移除并返回 "banana"
LLEN mylist                      # 返回列表长度,如 2

6. Key 相关命令

管理 key 的存在、过期、重命名等操作,可以有效控制数据生命周期。

命令作用
EXISTS key检查 key 是否存在,存在返回 1,否则返回 0
DEL key删除指定 key
EXPIRE key seconds设置 key 的过期时间(单位:秒)
TTL key获取 key 剩余生存时间(单位:秒)
KEYS pattern获取匹配 pattern 的所有 key(慎用,生产环境不推荐)
RENAME key newkey将 key 重命名为 newkey

示例

SET session "abc123"
EXISTS session           # 返回 1 表示 session 存在
EXPIRE session 60        # 设置 session 60 秒后过期
TTL session              # 返回 session 剩余生存时间
DEL session              # 删除 session

7. 客户端连接相关命令

用于管理客户端连接、认证、选择数据库以及断开连接。

命令作用
AUTH password认证连接所需的密码
SELECT db选择数据库(0 ~ 15 默认数据库)
CLIENT LIST列出当前所有客户端连接
CLIENT KILL ip:port断开指定客户端连接
QUIT关闭当前客户端连接

示例

AUTH mypassword           # 使用密码认证
SELECT 1                  # 选择数据库 1
CLIENT LIST               # 列出所有客户端连接
CLIENT KILL 127.0.0.1:6379 # 断开指定客户端连接
QUIT                      # 关闭连接

8. Redis 状态及监控命令

用于查看 Redis 服务器状态、信息、以及执行监控操作。

命令作用
INFO获取 Redis 服务器的详细信息(包括内存、连接、统计等)
PING测试服务器连接是否正常,返回 PONG
DBSIZE获取当前数据库中 key 的数量
FLUSHDB清空当前数据库中的所有 key
FLUSHALL清空所有数据库中的所有 key
MONITOR实时监控 Redis 接收到的所有命令

示例

PING                         # 返回 PONG
INFO                         # 返回服务器详细信息
DBSIZE                       # 返回当前数据库 key 数量,如 10
FLUSHDB                      # 清空当前数据库
# 注意:FLUSHALL 会清空所有数据库,请谨慎使用

                      |

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值