Redis常用指令(详细)

# Redis 常用指令

## 基础命令
### 启动与连接
```bash
# 启动 Redis 服务
redis-server

# 连接 Redis 客户端
redis-cli
```

### 基本操作
```bash
# 检查 Redis 服务是否运行
ping
# 返回结果: PONG

# 获取 Redis 的版本信息
info

# 查看所有键
keys *

# 删除键
del <key>

# 检查键是否存在
exists <key>
# 返回结果: 1 表示存在, 0 表示不存在

# 设置键的过期时间
expire <key> <seconds>

# 查看键的剩余存活时间
ttl <key>
# -1 表示没有设置过期时间,-2 表示键不存在

# 持久化某个键,移除其过期时间
persist <key>
```

## 字符串 (String)
```bash
# 设置键值
set <key> <value>

# 获取键值
get <key>

# 设置键值并设置过期时间(秒)
setex <key> <seconds> <value>

# 仅当键不存在时设置值
setnx <key> <value>

# 获取子字符串
getrange <key> <start> <end>

# 追加值到已有键
append <key> <value>

# 获取并更新值
getset <key> <value>

# 自增/自减
tincr <key>
decr <key>
incrby <key> <number>
decrby <key> <number>
```

## 哈希 (Hash)
```bash
# 设置哈希字段值
hset <key> <field> <value>

# 获取哈希字段值
hget <key> <field>

# 设置多个字段值
hmset <key> <field1> <value1> <field2> <value2> ...

# 获取多个字段值
hmget <key> <field1> <field2> ...

# 获取所有字段和值
hgetall <key>

# 删除字段
hdel <key> <field>

# 检查字段是否存在
hexists <key> <field>

# 获取字段数量
hlen <key>

# 获取所有字段
hkeys <key>

# 获取所有值
hvals <key>
```

## 列表 (List)
```bash
# 从左侧插入元素
lpush <key> <value1> <value2> ...

# 从右侧插入元素
rpush <key> <value1> <value2> ...

# 从左侧弹出元素
lpop <key>

# 从右侧弹出元素
rpop <key>

# 获取列表长度
llen <key>

# 获取指定范围的元素
lrange <key> <start> <stop>

# 按索引设置值
lset <key> <index> <value>

# 移除指定值
lrem <key> <count> <value>
```

## 集合 (Set)
```bash
# 添加元素
sadd <key> <member1> <member2> ...

# 删除元素
srem <key> <member>

# 检查元素是否存在
sismember <key> <member>

# 获取集合的所有元素
smembers <key>

# 获取集合的大小
scard <key>

# 随机获取一个或多个元素
srandmember <key> [count]
```

## 有序集合 (Sorted Set)
```bash
# 添加元素
zadd <key> <score1> <member1> <score2> <member2> ...

# 获取指定范围的元素(按分数排序)
zrange <key> <start> <stop> [WITHSCORES]

# 获取指定范围的元素(按分数逆序)
zrevrange <key> <start> <stop> [WITHSCORES]

# 删除元素
zrem <key> <member>

# 获取集合的大小
zcard <key>

# 获取成员的分数
zscore <key> <member>

# 获取指定分数范围内的元素
zrangebyscore <key> <min> <max> [WITHSCORES]
```

## 发布与订阅 (Pub/Sub)
```bash
# 订阅频道
subscribe <channel>

# 发布消息
publish <channel> <message>
```

## 事务 (Transaction)
```bash
# 开始事务
multi

# 执行事务
exec

# 放弃事务
discard
```

## 脚本 (Lua)
```bash
# 执行 Lua 脚本
eval <script> <numkeys> <key1> <key2> ... <arg1> <arg2> ...

# 加载脚本到缓存
script load <script>

# 检查脚本是否在缓存中
script exists <sha1>

# 杀死当前运行的脚本
script kill
```

## 其他
```bash
# 清空当前数据库
flushdb

# 清空所有数据库
flushall

# 切换数据库
select <db-index>

# 保存数据到磁盘
save

# 异步保存数据到磁盘
bgsave

# 查看慢查询日志
slowlog get [count]

__EOF__

本文作者xiaopo
本文链接https://www.cnblogs.com/xiaopo/p/18676566.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   小破的博客  阅读(21)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
历史上的今天:
2021-01-17 构造函数和原型对象
2021-01-17 设置一个两边固定中间自适应的css
2021-01-17 让绝对定位的div居中
点击右上角即可分享
微信分享提示