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]
Redis常用指令(详细)的更多相关文章
- redis基础:redis下载安装与配置,redis数据类型使用,redis常用指令,jedis使用,RDB和AOF持久化
知识点梳理 课堂讲义 课程计划 1. REDIS 入 门 (了解) (操作) 2. 数据类型 (重点) (操作) (理解) 3. 常用指令 (操作) 4. Jedis (重点) (操作) ...
- redis常用指令总结以及功能介绍
第一部分 redis的常用指令 一.针对key的操作 1.1 del key [key .. ] , 删除指定的一个或者多个key;1.2 dump key ...
- Redis常用指令之string、list、set、zset、hash
Redis之五大类型常用指令 redis的一些小知识 redis服务器端口默认是6379 在编译完成后的bin目录下启动服务端:redis-server 客户端连接操作:redis-cli -h lo ...
- Redis常用指令
1.使用指令存储数据 不同数据类型的使用 1.String > 在以上指令中我们使用set指令向redis存进了一个数据类型为string,名为str1,值为123456.(如果你要问为什么,那 ...
- redis 常用指令
redis指令有些相似,记忆起来不太容易,在此做一下整理 序号 类型 指令 参数 作用 例子 1 string set key value 存储一个 string 类型的值 set a aa 2 st ...
- Redis常用命令详细介绍
一.字符串 字符串键是Redis最基本的键值对类型,将一个单独的键和一个单独的值关联起来.通过字符串键,不仅可以存储和读取字符串,如果输入能被解释为整数和浮点数,还能执行自增或自减操作. 1.SET: ...
- linux常用指令
整理下来的linux常用指令 mount [-t 文件系统] 设备文件名 挂载点挂载命令,一般用于在挂载ISO,或者其他比如U盘等设备时使用,[-t iso9660]为固定格式,可写可不写,非必写项. ...
- 走进AngularJs(二) ng模板中常用指令的使用方式
通过使用模板,我们可以把model和controller中的数据组装起来呈现给浏览器,还可以通过数据绑定,实时更新视图,让我们的页面变成动态的.ng的模板真是让我爱不释手.学习ng道路还很漫长,从模板 ...
- Redis常用命令
Redis常用命令Redis提供了丰富的命令对数据库和各种数据类型进行操作,这些命令可以再Linux终端使用.1.键值相关命令2.服务器相关命令 一.键值相关命令 1.get get 键值 当 key ...
- 第2讲 Redis常用命令与高级应用
目录 一.redis数据类型 5. sorted sets类型和操作 二.Redis常用命令 1.键值相关命令 2.服务器相关命令 三. redis高级应用 1. 给redis服务器设置密码 2.持久 ...
随机推荐
- python基础之__init__.py
如何使用 在 Python 中,当一个目录被作为包来使用时,它会在包中寻找一个名为 __init__.py 的文件.如果该文件存在,Python 会将它加载到内存中,并在其中执行所有的代码. __in ...
- Python基础快速入门
1).Python运算符 1.Python算数运算符 描述: 例子: a = 21 b = 10 c = 0 c = a + b #31 c = a - b #11 c = a * b #210 c ...
- win11 与VMware pro16不兼容或者是不能嵌套虚拟或者此平台不支持虚拟化的Intel VT-x/EPT等问题
如遇 不用去掉啥windows沙盒,不用关掉什么Hyper-V. 可以在window11的应用里面的可选功能把虚拟平台的勾去掉然后重启一下 而虚拟机不在配置处理器的时候不勾选下图这个 就会出现这种情况 ...
- 一键生成美观的彩页演示+AI的训练过程科普
一键生成美观彩页 + AI训练揭秘:让你的内容瞬间高大上! 阅读时间: 8分钟 | 字数: 1300+ 你是否曾为制作精美的演示文稿而烦恼?是否对AI的训练过程充满好奇?今天,让我们一起探索如何用AI ...
- pydotplus使用
pydotplus是别的语言嫁接到python里面的,所以绘制要传入字符串形式表示的结构,而没有python的结构对象直接用来画.代码如下: import pydotplus as pdp graph ...
- 程序员遇到bug时常见的30种反应
开发应用程序是一项压力很大的工作,人无完人,工作中遇到bug是很正常的事,有些程序员会生气,沮丧,郁闷,甚至泄气,也有一些程序员则会比较淡定.如何进行修复bug的过程,是值得我们好好推敲的. 我想分享 ...
- 从零开始学java(第一天)
上班日学习时间很短,而且很多事情会耽搁,就会写的比较少 近几期的笔记以复习为主,后面会逐渐拓展对我个人来说的新知识 1. 复习了一下typore的语法,方便以后记笔记用 # MarkDown学习(# ...
- 前端必须知道的手机调试工具vConsole
在日常业务中我相信大家多多少少都有移动端的项目,移动端的项目需要真机调试的很多东西看不到调试起来也比较麻烦,今天给大家分享一个我认为比较好用的调试第三方库VConsole ,有了这个库咱们就在手机上看 ...
- Tailwind CSS样式优先级控制
前情 Tailwind CSS 是一个原子类 CSS 框架,它将基础的 CSS 全部拆分为原子级别,能达到最小化项目CSS.它的工作原理是扫描所有 HTML 文件.JavaScript 组件以及任何模 ...
- cve-2021-3156-sudo堆溢出简单分析
调试方式 首先从github下载代码 https://github.com/sudo-project/sudo/archive/SUDO_1_9_5p1.tar.gz 编译 tar xf sudo-S ...