欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 房产 > 家装 > Redis 常用命令详细手册(表格和命令版都有),包含基础操作、数据结构和实用技巧,并附详细注释

Redis 常用命令详细手册(表格和命令版都有),包含基础操作、数据结构和实用技巧,并附详细注释

2025/4/4 8:01:42 来源:https://blog.csdn.net/m0_75236543/article/details/146899723  浏览:    关键词:Redis 常用命令详细手册(表格和命令版都有),包含基础操作、数据结构和实用技巧,并附详细注释

Redis 基础命令速查表,如果有觉得看表不适应的兄弟,可往下滑看命令

分类命令语法示例详细注释应用场景
键(Key)操作KEYSKEYS pattern查找所有匹配 pattern 的键(如 KEYS user:*)。
生产环境慎用(阻塞式命令,大数据量会导致性能问题)。
开发调试时查找键
EXISTSEXISTS key检查键是否存在,返回 1(存在)或 0(不存在)。判断缓存是否存在
DELDEL key1 key2删除一个或多个键,返回删除成功的数量。清理无用数据
EXPIRE + TTLEXPIRE key 60
TTL key
EXPIRE:设置键的过期时间(秒)。
TTL:查看键剩余生存时间(-1=永不过期,-2=已过期)。
实现验证码过期、会话管理
字符串(String)SET + GETSET name "Alice"
GET name
SET:设置键值(可追加 EX 60 设置过期时间)。
GET:获取字符串值。
存储简单数据(如配置、计数器)
INCR/DECRINCR counter
DECRBY counter 5
INCR:原子性+1。
DECRBY:指定步长减少。
计数器、限流系统
MSET/MGETMSET k1 v1 k2 v2
MGET k1 k2
批量设置/获取多个键值,减少网络开销。批量操作数据
哈希(Hash)HSET/HGETHSET user:100 name "Alice" age 25
HGET user:100 name
HSET:设置哈希表的字段值。
HGET:获取单个字段值。
存储对象(如用户信息)
HGETALLHGETALL user:100返回哈希表的所有字段和值。获取完整对象数据
HDELHDEL user:100 age删除哈希表的指定字段。删除对象部分属性
列表(List)LPUSH/RPOPLPUSH tasks "task1"
RPOP tasks
LPUSH:从列表左侧插入(栈结构)。
RPOP:从右侧弹出(队列结构)。
消息队列、最新消息列表
LRANGELRANGE tasks 0 -1返回列表指定范围的元素(0 -1 表示全部)。分页查询历史记录
集合(Set)SADD/SMEMBERSSADD tags "redis"
SMEMBERS tags
SADD:添加元素到集合(自动去重)。
SMEMBERS:返回所有成员。
标签系统、好友关系
SINTERSINTER set1 set2返回多个集合的交集。共同好友、兴趣匹配
有序集合(Sorted Set)ZADD/ZRANGEZADD leaderboard 100 "Alice"
ZRANGE leaderboard 0 -1 WITHSCORES
ZADD:添加带分数的成员。
ZRANGE:按分数升序返回成员(WITHSCORES 显示分数)。
排行榜、优先级队列
服务器管理INFOINFO memory查看服务器状态信息(可选参数:memory/cpu/replication 等)。监控服务器性能
FLUSHDB/FLUSHALLFLUSHDBFLUSHDB:清空当前数据库。
FLUSHALL:清空所有数据库。 极端危险命令
测试环境数据清理
事务MULTI/EXECMULTI
SET a 10
SET b 20
EXEC
MULTI:开启事务。
EXEC:执行事务块内的所有命令(原子性保证)。
批量操作保证一致性
持久化BGSAVEBGSAVE后台异步保存数据到RDB文件(非阻塞)。定期数据备份

一、Key(键)操作

-- 查看所有键(生产环境慎用,数据量大时会阻塞)
KEYS *-- 检查键是否存在(返回1存在,0不存在)
EXISTS key_name-- 设置键过期时间(单位:秒)
EXPIRE key_name 60-- 查看键剩余生存时间(-1表示永不过期,-2表示键不存在)
TTL key_name-- 删除键
DEL key_name-- 随机返回一个键
RANDOMKEY-- 重命名键
RENAME old_key new_key

二、String(字符串)

-- 设置键值(如果键存在则覆盖)
SET name "Alice"-- 设置键值并设置过期时间(单位:秒)
SETEX age 30 "25"  -- 键age将在30秒后自动删除-- 只有当键不存在时设置(NX=Not eXists)
SETNX counter 1-- 获取值
GET name-- 值递增(原子操作)
INCR counter  -- 返回递增后的值-- 值递减
DECR counter-- 批量设置/获取
MSET k1 v1 k2 v2
MGET k1 k2

三、Hash(哈希表)

-- 设置哈希字段
HSET user:id:1001 name "Bob" age 30-- 获取单个字段
HGET user:id:1001 name-- 获取所有字段和值
HGETALL user:id:1001-- 删除字段
HDEL user:id:1001 age-- 检查字段是否存在
HEXISTS user:id:1001 email-- 获取所有字段名
HKEYS user:id:1001

四、List(列表)

-- 从左侧插入元素
LPUSH fruits "apple" "banana"-- 从右侧插入元素
RPUSH fruits "orange"-- 从左侧弹出元素(移除并返回)
LPOP fruits-- 获取列表片段(0到-1表示全部)
LRANGE fruits 0 -1-- 列表长度
LLEN fruits-- 保留指定范围内的元素
LTRIM fruits 0 1  -- 只保留前两个元素

五、Set(集合)

-- 添加元素
SADD tags "redis" "database" "nosql"-- 获取所有元素
SMEMBERS tags-- 随机弹出一个元素
SPOP tags-- 集合运算(并集/交集/差集)
SUNION set1 set2
SINTER set1 set2
SDIFF set1 set2-- 检查元素是否存在
SISMEMBER tags "redis"

六、Sorted Set(有序集合)

-- 添加带分数的成员
ZADD leaderboard 100 "Alice" 90 "Bob"-- 按分数升序获取(WITHSCORES显示分数)
ZRANGE leaderboard 0 -1 WITHSCORES-- 按分数降序获取
ZREVRANGE leaderboard 0 -1 WITHSCORES-- 获取成员排名(从0开始)
ZRANK leaderboard "Bob"  -- 升序排名
ZREVRANK leaderboard "Bob"  -- 降序排名-- 根据分数范围查询
ZRANGEBYSCORE leaderboard 80 100

七、服务器管理

 
-- 查看服务器信息
INFO-- 查看内存使用情况
INFO memory-- 查看客户端连接
CLIENT LIST-- 清空当前数据库
FLUSHDB-- 清空所有数据库
FLUSHALL  -- 生产环境慎用!-- 保存数据到磁盘(同步)
SAVE-- 后台保存数据到磁盘
BGSAVE-- 关闭Redis连接
QUIT

八、事务操作

-- 开启事务
MULTI-- 将命令加入队列
SET balance 100
INCRBY balance 50-- 执行事务(如果中途出错,所有命令不执行)
EXEC-- 取消事务
DISCARD

九、实用技巧

1. 批量删除键
-- 删除所有以"temp:"开头的键
redis-cli KEYS "temp:*" | xargs redis-cli DEL
2. 密码连接
-- 连接时直接认证
redis-cli -a yourpassword-- 更安全的方式(先连接再认证)
redis-cli
AUTH yourpassword
3. 性能测试工具
-- 测试Redis每秒操作数
redis-benchmark -q -n 100000

十、可视化工具推荐

  1. RedisInsight(官方GUI工具)

  2. Another Redis Desktop Manager(开源客户端)

 链接 安装Redis与安装可视化Another Redis Desktop Manager

兄弟们注意一下

  1. KEYS * 和 FLUSHALL 在生产环境慎用

  2. 重要数据建议开启持久化(配置 save 参数)

  3. 长命令可以用 \ 换行输入:

后续会慢慢写,谢谢

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词