Redis 命令大全
文章目录
- 启动与连接
- Key(键)相关命令
- String(字符串)
- Hash(哈希)
- List(列表)
- Set(集合)
- Sorted Set(有序集合)
- 其他常见命令
- HyperLogLog(基数统计)
- Bitmaps(位图)
- Streams(流数据)
- 连接管理
- 许可证控制
- Lua脚本执行
- 其他实用命令
Redis 提供了大量的命令来操作其五种基本数据结构(字符串、哈希表、列表、集合和有序集合)以及进行数据库管理。以下是一些 Redis 常用命令的大致分类,由于篇幅限制,这里不可能列出所有命令的详细信息,请参阅官方文档以获取最新和最全的命令列表。
启动与连接
- 启动服务:
redis-server [配置文件路径] # 指定配置文件启动 redis-server & # 以后台模式启动 - 客户端连接:
redis-cli # 连接本地Redis服务器 redis-cli -h 主机名 -p 端口号 # 远程连接Redis服务器 redis-cli -a 密码 # 使用密码连接
Key(键)相关命令
- 操作Key:
DEL key:删除指定key。EXISTS key:检查key是否存在。KEYS pattern:查找所有符合给定模式的key。RANDOMKEY:随机返回一个key。RENAME oldkey newkey:重命名key。RENAMENX oldkey newkey:仅当newkey不存在时重命名key。TTL key:获取key的剩余生存时间。PTTL key:获取key的精确剩余生存时间(毫秒)。TYPE key:返回key所存储的值的类型。
String(字符串)
- 设置与获取:
SET key value:设置key的值。GET key:获取key的值。APPEND key value:追加值到key对应的字符串末尾。GETRANGE key start end:获取key中指定范围的子字符串。
Hash(哈希)
- 增删改查:
HSET key field value:为哈希表key中的field赋值。HGET key field:获取哈希表中指定字段的值。HMSET key field value [field value ...]:同时设置多个哈希字段的值。HGETALL key:获取哈希表中所有字段和值。
List(列表)
- 元素操作:
LPUSH key value [value ...]:将一个或多个值插入到列表头部。RPUSH key value [value ...]:将一个或多个值插入到列表尾部。LPOP key:移除并返回列表的第一个元素。RPOP key:移除并返回列表的最后一个元素。LRANGE key start stop:获取列表指定范围内的元素。
Set(集合)
- 成员操作:
SADD key member [member ...]:向集合添加一个或多个成员。SISMEMBER key member:判断成员是否是集合的成员。SMEMBERS key:获取集合的所有成员。SCARD key:获取集合内元素的数量。
Sorted Set(有序集合)
- 元素排序操作:
ZADD key score member [score member ...]:添加一个带有分数的成员到有序集合。ZRANK key member:返回有序集合中指定成员的索引(排名)。ZSCORE key member:返回有序集合中成员的分数值。ZRANGE key start stop [WITHSCORES]:按索引范围返回有序集合的成员及其分数。
其他常见命令
-
事务:
MULTI,EXEC,DISCARD,WATCH -
发布/订阅:
PUBLISH channel message,SUBSCRIBE channel [channel ...],UNSUBSCRIBE [channel ...] -
持久化:
SAVE,BGSAVE,LASTSAVE,CONFIG SET save "..."(配置持久化策略) -
数据库管理:
SELECT index:切换数据库。FLUSHDB:清空当前数据库。FLUSHALL:清空所有数据库。
-
脚本执行:
EVAL script numkeys key [key ...] arg [arg ...] -
监控与统计:
INFO,MONITOR
HyperLogLog(基数统计)
- 基数估算:
PFADD key element [element ...]:添加指定元素到HyperLogLog结构中。PFCOUNT key [key ...]:返回给定HyperLogLog的近似基数,即唯一元素数量。
Bitmaps(位图)
- 位操作:
SETBIT key offset value:对key所储存的字符串值设置或清除指定偏移量上的位。GETBIT key offset:获取key所储存的字符串值指定偏移量上的位。BITCOUNT key [start end]:计算给定范围内,key对应的字符串中被设置为1的比特位的数量。
Streams(流数据)
- 流操作:
XADD key * field value [field value ...]:将一条新消息追加到流中。XRANGE key start end [COUNT count]:从流中返回指定范围内的消息。XPENDING key group [start end count consumer]:查询消费者组未确认的消息。
连接管理
- 客户端连接信息:
CLIENT LIST:获取客户端连接列表。CLIENT KILL ip:port:关闭与指定IP和端口相匹配的客户端连接。CLIENT GETNAME:获取当前连接的名称。CLIENT SETNAME connection-name:设置当前连接的名称。
许可证控制
- ACL命令:
ACL SETUSER username:创建或修改用户及其权限。ACL GETUSER username:获取用户的信息和权限列表。ACL LIST:列出所有用户及它们的权限。ACL WHOAMI:显示当前连接的身份。
Lua脚本执行
Redis支持使用Lua语言编写脚本并在服务器端执行以实现更复杂的逻辑,例如:
EVAL script numkeys key [key ...] arg [arg ...]:执行Lua脚本,并通过key和arg参数传入键名和参数。
其他实用命令
-
过期时间设置:
PEXPIRE key milliseconds:为key设置过期时间(毫秒)。EXPIRE key seconds:为key设置过期时间(秒)。PERSIST key:移除key的过期时间,使其持久化。
-
事务相关:
EXEC:执行事务块内的命令序列。DISCARD:取消事务,放弃执行事务块内的所有命令。UNWATCH:取消之前对所有key的监视。
由于篇幅限制,以上仍非Redis命令大全的完整列表,更多高级特性、详细参数以及命令用法,请参考官方文档。
python推荐学习汇总连接:
50个开发必备的Python经典脚本(1-10)
50个开发必备的Python经典脚本(11-20)
50个开发必备的Python经典脚本(21-30)
50个开发必备的Python经典脚本(31-40)
50个开发必备的Python经典脚本(41-50)
————————————————
最后我们放松一下眼睛

相关文章:
Redis 命令大全
文章目录 启动与连接Key(键)相关命令String(字符串)Hash(哈希)List(列表)Set(集合)Sorted Set(有序集合)其他常见命令HyperLogLog&…...
再这么烂下去,离糊就不远了。别让才华被埋没。
♥ 为方便您进行讨论和分享,同时也为能带给您不一样的参与感。请您在阅读本文之前,点击一下“关注”,非常感谢您的支持! 文 |猴哥聊娱乐 编 辑|徐 婷 校 对|侯欢庭 近日,胡歌凭借电视剧《繁花》荣登《环球银幕》二月…...
Unity BuffSystem buff系统
Unity BuffSystem buff系统 一、介绍二、buff系统架构三、架构讲解四、框架使用buff数据Json数据以及工具ShowTypeBuffTypeMountTypeBuffOverlapBuffShutDownTypeBuffCalculateType时间和层数这里也不过多说明了如何给生物添加buff 五、总结 一、介绍 现在基本做游戏都会需要些…...
Android rom定制 修改system分区的容量大小
1、写在前面 系统ROM定制化,预置app太多,会导致系统rom很大,原生系统system分区已经不够用了,要加大系统systemui分区 2.修改system分区的容量大小的核心类 device/mediatekprojects/$project/BoardConfig.mk build/make/core/Makefile3、修改system 分区的容量大小的核…...
速盾:服务器接入免备案CDN节点的好处有哪些
本文将探讨服务器接入免备案CDN节点的好处,包括提高网站的访问速度、增加网站的稳定性和可靠性、降低带宽成本等方面的优势。同时,还将提供一些相关问题的解答,帮助读者更好地了解这一技术。 随着互联网的迅猛发展,网站的访问速度…...
Redisson看门狗机制
一、背景 网上redis分布式锁的工具方法,大都满足互斥、防止死锁的特性,有些工具方法会满足可重入特性。如果只满足上述3种特性会有哪些隐患呢?redis分布式锁无法自动续期,比如,一个锁设置了1分钟超时释放,…...
【Java数据结构】双向 不带头 非循环 链表实现(模拟实现LinkedList类)
LinkedList底层实际上是双向、不带头结点、非循环的链表 链表的分类有八种,常用的有两种:一是单向、不带头结点、非循环的(基本上网上的题型都是这种);二是双向、不带头结点、非循环(LinkedList的底层实现…...
深度学习系列55:深度学习加速技术概述
总体有两个方向:模型优化 / 框架优化 1. 模型优化 1.1 量化 最常见的量化方法为线性量化,权重从float32量化为int8,将输入数据映射在[-128,127]的范围内。在 nvdia gpu,x86、arm 和 部分 AI 芯片平台上,均支持 8bit…...
使用python启动一个roslaunch文件
roslaunch 的实现源码主要位于 ROS 的 ros_comm 仓库中的 tools/roslaunch 目录下。源码主要由 Python 脚本和少量的 C 代码组成。 在Python程序中导入roslaunch包并启动一个ROS launch文件,你需要确保ROS环境已经设置好,并且相关的roslaunch包已经安装…...
JavaEE企业级应用软件开发—Spring框架入门学习笔记(一)
一、认识框架 实际开发中,随着业务的发展,软件系统变得越来越复杂,如果所有的软件都从底层功能开始开发,那将是一个漫长而繁琐的过程。此外,团队协作开发时,由于没有统一的调用规范,系统会出现大…...
ElasticSearch-SpringBoot整合ElasticSearch
六、SpringBoot整合ElasticSearch 1、浏览官方文档 1、查找跟ES客户端相关的文档 使用Java REST Client 选择Java Hight Level REST Client 2、创建项目的准备 1.找到原生的依赖 2.找到对象 3.分析这个类里面的方法 3、正式创建项目 1.创建工程 2.导入依赖 注意依赖版本…...
用云手机打造tiktok账号需要注意些什么?
随着tiktok平台的火热,越来越多的商家开始尝试更高效的tiktok运营方法。其中,tiktok云手机作为一种新科技引起了很多人的注意,那么用云手机运营tiktok需要注意些什么?下文将对此进行详细解析。 1. 不是所有的云手机都适合做tiktok…...
MySQL基础查询篇(9)-数学函数在查询中的应用
在MySQL数据库中,数学函数在查询中扮演了非常重要的角色。这些函数可以帮助我们进行各种数学计算和处理,使得我们能够更有效地处理和分析数据。本文将介绍一些常用的MySQL数学函数及其在查询中的应用。 1. ABS函数 ABS函数用于返回一个数值的绝对值。在…...
c#内置委托
C#语言中有许多内置的委托,其中一些是常用的,包括: Action:表示不带返回值的方法的委托。它可以接受多个参数,但不返回任何值。 Action<int, string> actionDelegate (x, y) > Console.WriteLine("Ac…...
【自动化测试】---Selenium+Java
1.自动化测试分类 接口自动化测试UI自动化测试(移动端自动化测试、Web端自动化测试) 2.选择Selenium作为web自动化工具原因(面试题) 开源免费支持多个浏览器支持多个系统支持多语言Selenium包提供很多供测试使用的API 3.自动化是什…...
uniapp新增一条数据增加一个折叠栏
//折叠栏 <uni-collapse classcollapse refcollapse><uni-collapse-item v-for"(item, index) in dataForm.beefCattleNums" :key"index" :title"item.fatCalfNum" classcollapse-item title-bordershow :borderfalse clicktoggleItem(…...
【Netty技术专题】「原理分析系列」Netty强大特性之Native transports扩展开发实战
Netty强大特性之Native transports技术原理分析 背景介绍JNI概念介绍不同平台的JNI实现 使用Native transports库Maven的分类器(Classifier)使用Linux native transport使用MacOS/BSD native transport库构建native transport库Linux版本要求MacOS/BSD版…...
1-1 动手学深度学习v2-线性回归-笔记
简化核心模型 假设1: 影响房价的关键因素是卧室个数,卫生间个数和居住面积,记为 x 1 x_{1} x1, x 2 x_{2} x2, x 3 x_{3} x3假设2: 成交价是关键因素的加权和 y w 1 x 1 w 2 x 2 w 3 x 3 b yw_{1}x_{1}w_{2}x_{2}w_{3…...
算法每日一题: 使用循环数组所有元素相等的最少秒数 | 哈希
大家好,我是星恒,今天给大家带来的是一道需要感觉规律的题目,只要读懂题目中的规律,就可以做出来了 这道题用到了哈希,还有一个关键点比较类似循环队列 题目:leetcode 2808 给你一个下标从 0 开始长度为 n…...
canvas实现涂鸦画板功能
查看专栏目录 canvas实例应用100专栏,提供canvas的基础知识,高级动画,相关应用扩展等信息。canvas作为html的一部分,是图像图标地图可视化的一个重要的基础,学好了canvas,在其他的一些应用上将会起到非常重…...
龙虎榜——20250610
上证指数放量收阴线,个股多数下跌,盘中受消息影响大幅波动。 深证指数放量收阴线形成顶分型,指数短线有调整的需求,大概需要一两天。 2025年6月10日龙虎榜行业方向分析 1. 金融科技 代表标的:御银股份、雄帝科技 驱动…...
变量 varablie 声明- Rust 变量 let mut 声明与 C/C++ 变量声明对比分析
一、变量声明设计:let 与 mut 的哲学解析 Rust 采用 let 声明变量并通过 mut 显式标记可变性,这种设计体现了语言的核心哲学。以下是深度解析: 1.1 设计理念剖析 安全优先原则:默认不可变强制开发者明确声明意图 let x 5; …...
XCTF-web-easyupload
试了试php,php7,pht,phtml等,都没有用 尝试.user.ini 抓包修改将.user.ini修改为jpg图片 在上传一个123.jpg 用蚁剑连接,得到flag...
c++ 面试题(1)-----深度优先搜索(DFS)实现
操作系统:ubuntu22.04 IDE:Visual Studio Code 编程语言:C11 题目描述 地上有一个 m 行 n 列的方格,从坐标 [0,0] 起始。一个机器人可以从某一格移动到上下左右四个格子,但不能进入行坐标和列坐标的数位之和大于 k 的格子。 例…...
Qwen3-Embedding-0.6B深度解析:多语言语义检索的轻量级利器
第一章 引言:语义表示的新时代挑战与Qwen3的破局之路 1.1 文本嵌入的核心价值与技术演进 在人工智能领域,文本嵌入技术如同连接自然语言与机器理解的“神经突触”——它将人类语言转化为计算机可计算的语义向量,支撑着搜索引擎、推荐系统、…...
新能源汽车智慧充电桩管理方案:新能源充电桩散热问题及消防安全监管方案
随着新能源汽车的快速普及,充电桩作为核心配套设施,其安全性与可靠性备受关注。然而,在高温、高负荷运行环境下,充电桩的散热问题与消防安全隐患日益凸显,成为制约行业发展的关键瓶颈。 如何通过智慧化管理手段优化散…...
基于Docker Compose部署Java微服务项目
一. 创建根项目 根项目(父项目)主要用于依赖管理 一些需要注意的点: 打包方式需要为 pom<modules>里需要注册子模块不要引入maven的打包插件,否则打包时会出问题 <?xml version"1.0" encoding"UTF-8…...
数据库分批入库
今天在工作中,遇到一个问题,就是分批查询的时候,由于批次过大导致出现了一些问题,一下是问题描述和解决方案: 示例: // 假设已有数据列表 dataList 和 PreparedStatement pstmt int batchSize 1000; // …...
SpringTask-03.入门案例
一.入门案例 启动类: package com.sky;import lombok.extern.slf4j.Slf4j; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cache.annotation.EnableCach…...
CMake控制VS2022项目文件分组
我们可以通过 CMake 控制源文件的组织结构,使它们在 VS 解决方案资源管理器中以“组”(Filter)的形式进行分类展示。 🎯 目标 通过 CMake 脚本将 .cpp、.h 等源文件分组显示在 Visual Studio 2022 的解决方案资源管理器中。 ✅ 支持的方法汇总(共4种) 方法描述是否推荐…...
