Redis:基本操作语法的技术指南

admin
4
2025-08-05

🚀 1、简述

Redis 是一款基于内存、支持多种数据结构的高性能键值数据库,常用于缓存、消息队列、排行榜、会话存储等场景。本文将系统梳理 Redis 的常用命令,配合实践样例帮助你快速掌握。

image-ouj0.png


📦 2、连接 Redis

默认连接命令:

redis-cli

连接指定主机和端口:

redis-cli -h 127.0.0.1 -p 6379

🔑 Key 操作(通用)

操作 命令示例
设置 Key SET key value
获取 Key GET key
删除 Key DEL key
是否存在 EXISTS key
设置过期 EXPIRE key 60(60 秒)
查看 TTL TTL key
模糊匹配 KEYS user*
重命名 Key RENAME oldKey newKey

实践:

SET name "Alice"
GET name
EXPIRE name 30
TTL name
DEL name

🧵 3、String 类型

常用命令:

SET count 10
GET count
INCR count     # 自增1
DECR count     # 自减1
APPEND count "0"
GETRANGE count 0 2

应用场景:

🔹 缓存数据
🔹 数字计数器(如浏览量、点赞)


📚 4、Hash(哈希)类型

类似于 Java 中的 Map,结构化存储对象。

常用命令:

HSET user:1 name "Alice"
HSET user:1 age 25
HGET user:1 name
HGETALL user:1
HDEL user:1 age
HEXISTS user:1 name

实践样例:

HSET user:101 username "bob" email "bob@example.com"
HGETALL user:101

应用场景:

存储用户信息、商品详情等结构化数据


📋 5、List(列表)

类似 LinkedList,支持从头/尾部插入和弹出。

常用命令:

LPUSH messages "Hello"
RPUSH messages "World"
LPOP messages
RPOP messages
LRANGE messages 0 -1

应用场景:

🔹 消息队列
🔹 时间线、日志等顺序数据


🔢 6、Set(集合)

无序、唯一性集合,常用于去重、标签等功能。

常用命令:

SADD tags "java"
SADD tags "redis"
SREM tags "java"
SMEMBERS tags
SISMEMBER tags "redis"
SUNION set1 set2
SINTER set1 set2

应用场景:

🔹 标签系统
🔹 活跃用户、好友关系交集等


📊 7、Sorted Set(有序集合)

集合内元素带有权重(score),常用于排行榜、优先队列。

常用命令:

ZADD scores 100 "Alice"
ZADD scores 150 "Bob"
ZRANGE scores 0 -1 WITHSCORES
ZREVRANGE scores 0 1 WITHSCORES
ZREM scores "Alice"
ZSCORE scores "Bob"

应用场景:

🔹 排行榜
🔹 热门文章排序


🔐 8、持久化和发布订阅(略讲)

持久化:

🔹 RDB 快照:SAVE, BGSAVE
🔹 AOF 日志:修改 redis.conf 配置 appendonly yes

发布订阅:

SUBSCRIBE news
PUBLISH news "Redis 6.0 released!"

🔁 9、事务操作(MULTI / EXEC)

MULTI
SET a 10
INCR a
EXEC

也可以使用 DISCARD 放弃事务。


✅ 10、总结

类型 结构 应用场景
String 单值 缓存、计数器
Hash 字典 用户/商品信息
List 有序队列 消息队列
Set 无序集合 标签、去重
ZSet 有序集合 排行榜、优先级队列
动物装饰