当前位置: 首页 > news >正文

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#语言中有许多内置的委托&#xff0c;其中一些是常用的&#xff0c;包括&#xff1a; Action&#xff1a;表示不带返回值的方法的委托。它可以接受多个参数&#xff0c;但不返回任何值。 Action<int, string> actionDelegate (x, y) > Console.WriteLine("Ac…...

【自动化测试】---Selenium+Java

1.自动化测试分类 接口自动化测试UI自动化测试&#xff08;移动端自动化测试、Web端自动化测试&#xff09; 2.选择Selenium作为web自动化工具原因&#xff08;面试题&#xff09; 开源免费支持多个浏览器支持多个系统支持多语言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的分类器&#xff08;Classifier&#xff09;使用Linux native transport使用MacOS/BSD native transport库构建native transport库Linux版本要求MacOS/BSD版…...

1-1 动手学深度学习v2-线性回归-笔记

简化核心模型 假设1: 影响房价的关键因素是卧室个数&#xff0c;卫生间个数和居住面积&#xff0c;记为 x 1 x_{1} x1​&#xff0c; x 2 x_{2} x2​&#xff0c; 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…...

算法每日一题: 使用循环数组所有元素相等的最少秒数 | 哈希

大家好&#xff0c;我是星恒&#xff0c;今天给大家带来的是一道需要感觉规律的题目&#xff0c;只要读懂题目中的规律&#xff0c;就可以做出来了 这道题用到了哈希&#xff0c;还有一个关键点比较类似循环队列 题目&#xff1a;leetcode 2808 给你一个下标从 0 开始长度为 n…...

canvas实现涂鸦画板功能

查看专栏目录 canvas实例应用100专栏&#xff0c;提供canvas的基础知识&#xff0c;高级动画&#xff0c;相关应用扩展等信息。canvas作为html的一部分&#xff0c;是图像图标地图可视化的一个重要的基础&#xff0c;学好了canvas&#xff0c;在其他的一些应用上将会起到非常重…...

《Qt C++ 与 OpenCV:解锁视频播放程序设计的奥秘》

引言:探索视频播放程序设计之旅 在当今数字化时代,多媒体应用已渗透到我们生活的方方面面,从日常的视频娱乐到专业的视频监控、视频会议系统,视频播放程序作为多媒体应用的核心组成部分,扮演着至关重要的角色。无论是在个人电脑、移动设备还是智能电视等平台上,用户都期望…...

工程地质软件市场:发展现状、趋势与策略建议

一、引言 在工程建设领域&#xff0c;准确把握地质条件是确保项目顺利推进和安全运营的关键。工程地质软件作为处理、分析、模拟和展示工程地质数据的重要工具&#xff0c;正发挥着日益重要的作用。它凭借强大的数据处理能力、三维建模功能、空间分析工具和可视化展示手段&…...

如何在看板中有效管理突发紧急任务

在看板中有效管理突发紧急任务需要&#xff1a;设立专门的紧急任务通道、重新调整任务优先级、保持适度的WIP&#xff08;Work-in-Progress&#xff09;弹性、优化任务处理流程、提高团队应对突发情况的敏捷性。其中&#xff0c;设立专门的紧急任务通道尤为重要&#xff0c;这能…...

Robots.txt 文件

什么是robots.txt&#xff1f; robots.txt 是一个位于网站根目录下的文本文件&#xff08;如&#xff1a;https://example.com/robots.txt&#xff09;&#xff0c;它用于指导网络爬虫&#xff08;如搜索引擎的蜘蛛程序&#xff09;如何抓取该网站的内容。这个文件遵循 Robots…...

【开发技术】.Net使用FFmpeg视频特定帧上绘制内容

目录 一、目的 二、解决方案 2.1 什么是FFmpeg 2.2 FFmpeg主要功能 2.3 使用Xabe.FFmpeg调用FFmpeg功能 2.4 使用 FFmpeg 的 drawbox 滤镜来绘制 ROI 三、总结 一、目的 当前市场上有很多目标检测智能识别的相关算法&#xff0c;当前调用一个医疗行业的AI识别算法后返回…...

3-11单元格区域边界定位(End属性)学习笔记

返回一个Range 对象&#xff0c;只读。该对象代表包含源区域的区域上端下端左端右端的最后一个单元格。等同于按键 End 向上键(End(xlUp))、End向下键(End(xlDown))、End向左键(End(xlToLeft)End向右键(End(xlToRight)) 注意&#xff1a;它移动的位置必须是相连的有内容的单元格…...

零基础在实践中学习网络安全-皮卡丘靶场(第九期-Unsafe Fileupload模块)(yakit方式)

本期内容并不是很难&#xff0c;相信大家会学的很愉快&#xff0c;当然对于有后端基础的朋友来说&#xff0c;本期内容更加容易了解&#xff0c;当然没有基础的也别担心&#xff0c;本期内容会详细解释有关内容 本期用到的软件&#xff1a;yakit&#xff08;因为经过之前好多期…...

如何在网页里填写 PDF 表格?

有时候&#xff0c;你可能希望用户能在你的网站上填写 PDF 表单。然而&#xff0c;这件事并不简单&#xff0c;因为 PDF 并不是一种原生的网页格式。虽然浏览器可以显示 PDF 文件&#xff0c;但原生并不支持编辑或填写它们。更糟的是&#xff0c;如果你想收集表单数据&#xff…...

推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材)

推荐 github 项目:GeminiImageApp(图片生成方向&#xff0c;可以做一定的素材) 这个项目能干嘛? 使用 gemini 2.0 的 api 和 google 其他的 api 来做衍生处理 简化和优化了文生图和图生图的行为(我的最主要) 并且有一些目标检测和切割(我用不到) 视频和 imagefx 因为没 a…...

LabVIEW双光子成像系统技术

双光子成像技术的核心特性 双光子成像通过双低能量光子协同激发机制&#xff0c;展现出显著的技术优势&#xff1a; 深层组织穿透能力&#xff1a;适用于活体组织深度成像 高分辨率观测性能&#xff1a;满足微观结构的精细研究需求 低光毒性特点&#xff1a;减少对样本的损伤…...