百度360必应搜狗淘宝本站头条
当前位置:网站首页 > IT知识 > 正文

Redis命令大全详解(38个最常用命令)

liuian 2025-09-29 07:21 68 浏览

关注mikechen十余年BAT架构经验倾囊相授!

大家好,我是mikechen。

Redis是大型架构的基石,下面我重点详解Redis命令大全@mikechen

文章来源:mikechen.cc


Redis String常用命令

命令名称

示例

描述

set

set key value

设置键值对

get

get key

获取值

incr

incr key

递增值

decr

decr key

递减值

strlen

strlen key

获取字符串长度

incrby

incrby key increment

增加指定数字

Redis String示例

#设置key和value,正确返回OKset key valueset name mikechen#获取key对应的value值,若没有返回nilget keyget name#返回key对应的value,再重新设置这个key的值getset key valuegetset name lily#设置多个键值对 正确返回OKmset k1 v1 k2 v2 ...mset sex 1 age 20 address hz#获取多对key对应的valuemget k1 k2 k3 ...mget sex age address

String类型的值为整数,或者浮点数形式时,Redis可以把它当做整数一样操作,支持自加(incr )、自减(decr )、加(incrby )、减(decrby )等操作。

#自增1,value是数值类型才能成功,如果这个值不是数值,则会报错incr keyincr age#age本来是20,现在返回就是21#自增指定数量,value是数值类型才能成功incrby age 5#age本来是20,现在返回就是25#自减1,value是数值类型才能成功。decr keydecr age#age本来是0,现在返回就是-1#自减指定数量,value是数值类型才能成功decrby keydecrby age 20#age本来是30,现在返回就是10

String应用场景

1)计数器

因为 Redis 处理命令是单线程,所以执行命令的过程是原子的,因此 String 数据类型适合计数场景,比如:计算访问次数、点赞、转发、库存数量等等;

2)共享session

分布式Session可以很方便的共享存储session。

3)分布式锁

SET 命令有个 NX 参数可以实现「key不存在才插入」,可以用它来实现分布式锁;


redis list常用指令

常用命令

命令

左压栈

lpush key v1 v2 v3 v4…

右压栈

rpush key v1 v2 …

查看里面的元素

lrange key start offset

左弹栈

lpop key

右弹栈

rpop key

按照索引查找

lindex key index

查看长度

llen key

删除几个几

lrem key 数量 value

指定开始和结束的位置截取,再赋值给key

ltrim key start offset

右出栈左压栈,把resoure的左后一个,压倒dest的第一个

rpoplpush resource destination

重置指定索引的值

lset key index value

在指定元素前/后插入指定元素

linsert key before/after 值1 值2

list底层有多种数据类型,数据量少的时候是ziplist压缩列表,内存是连续分配的,当元素个数超过某个值时转为linkedlist双向链表。

Redis 3.2 版本之后,List 数据类型底层数据结构就只由 quicklist 实现了,替代了双向链表和压缩列表。

Redis List应用场景

  1. 用户列表,商品列表,评论列表等;
  2. 消息队列;
  3. 栈;


Redis Set常用命令

常用命令

命令

添加值

sadd key values

查看值

smembers key

检查集合是否有值

sismember key value

查看set集合里面的元素个数

scard key

删除集合中的指定元素

srem key value

随机弹出某个元素

srandmember key

随机出栈

spop key

把key1中的某个值赋值给key2

smove SourceSet destSet membe

Redis Set应用场景

Set 类型比较适合用来数据去重和保障数据的唯一性,还可以用来统计多个集合的交集、错集和并集等,当我们存储的数据是无序并且需要去重的情况下,比较适合使用集合类型进行存储。

比如:

  • 统计网站uv;
  • 统计共同好友;


Sorted Set常用命令

命令

帮助

描述

zadd

zadd key score1 v1 score2 v2 score1v3 … scoren vn

为有序集合添加新成员

zrem

zrem key mem1 mem2 …memn

删除有序集合中指定成员

zcard

zcard key

获得有序集合中的元素数量

zcount

zcount key min max

返回集合中score值在[min,max]区间的元素数量

zincrby

zincrby key increment member

在集合的member分值上加increment

zscore

zscore key member

获得集合中member的分值

zrank

zrank key member

获得集合中member的排名(按分值从小到大)

zrevrank

zrevrank key member

获得集合中member的排名(按分值从大到小)

zrange

zrange key start end

获得集合中指定区间成员,按分数递增排序

zrevrange

zrevrange key start end

获得集合中指定区间成员,按分数递减排序

Sorted Set应用场景

有序列表被广泛使用在各种排行榜业务上:比如销量排行,用户点击率排行等


Redis Hash常用命令

作用

命令

添加单个

hset key field value

获取单个

hget key field

一次性添加多个键值

hmset key field1 value1 field2 value2 …

一次性获取多个

hmget

获取所有键值

hgetall key

删除

hdel

获取键值对的个数

hlen

检查是否包含某个字段

hget key field

查看所有key

hkeys

给某个数值类型(否则报错)的值增加指定整数值

hincrby key field increment

给某个数字类型值,增加指定浮点类型值

hincrbyfloat key field increment

如果不存在则添加

hsetnx

Redis Hash应用场景

比如最典型的就是购物车,以用户 id 为 key,商品 id 为 field,商品数量为 value,恰好构成了购物车的3个要素,如下图所示:

涉及的命令如下:

  • 添加商品:HSET cart:{用户id} {商品id} 1
  • 添加数量:HINCRBY cart:{用户id} {商品id} 1
  • 商品总数:HLEN cart:{用户id}
  • 删除商品:HDEL cart:{用户id} {商品id}
  • 获取购物车所有商品:HGETALL cart:{用户id}

当前仅仅是将商品ID存储到了Redis 中,在回显商品具体信息的时候,还需要拿着商品 id 查询一次数据库,获取完整的商品的信息。

以上

本篇已收于mikechen原创超30万字《阿里架构师进阶专题合集》里面。

相关推荐

路由器组网具体连接方法(路由器组网教程)

举例:你正在用一个TP-LINK的无线路由器上网,信号不是太好,你想在下边再连一个无线路由器的话,就得在第二个路由器上设置了,先不管第一个路由器,设置步骤:把第二个无线路由器连接到电脑上(只是路...

雨林木风win7纯净版gho(雨林木风win7官网)

雨林木风WIN7光盘重装系统的步骤是将光盘放入光驱内,设置光驱为第一启动盘,打开电脑后进入光盘引导,最后将系统文件镜像到系统盘上1.你下载的雨林木风GHOSTXPSP3纯净版Y8.0是一个克隆光...

电脑一直正在重新启动怎么解决

1、电脑误删除或者是破坏了系统文件。那么需要重新安装系统。2、可能是安装的软件或者是插件跟系统兼容性冲突导致的。可以强制关机3次,然后重新启动电脑会出现恢复界面——选择安全模式——然后电脑会重新启...

如何下载ps软件免费版(ps如何下载免费版本)
如何下载ps软件免费版(ps如何下载免费版本)

1.在搜索引擎中输入adobe并点击搜索。2.点击adobe官网。3.点击支持并点击下载与安装。4.点击开始免费试用并点击下载。5.打开文件夹并点击打开进行安装即可。6.根据以上步骤即可下载安装ps。AdobePhotoshopCS6号...

2026-01-14 05:37 liuian

怎么判断该换硅脂了(cpu硅脂干了影响真的很大吗)

方法步骤如下第一,从系统软件的运行上来看,如果在运行某些大型软件,容易导致显卡发热的程序时,出现画面掉帧,或卡顿,甚至是画面卡死等情况,这大多是因为显卡散热出现问题,导致显卡自动降频,以降低功耗来减少...

壁纸图片2025最新款(电脑桌面壁纸图片2025最新款)

要更换2023最新款壁纸图片,可以按照以下步骤操作:首先,找到您想要更换的壁纸图片并下载到您的设备上。其次,进入您的设备设置,找到“壁纸”或“桌面壁纸”选项,并点击进入。然后,选择“更换壁纸”并在相册...

清理垃圾的神器(清理垃圾的神器是什么)

1、《腾讯手机管家》这款可以帮助用户进行强力的清理,加速告别空间卡顿,缓慢延迟的问题的软件当中,用户可以随时随地登录软件进行自动清理和自动清理,自动清理包括图片,视频,语音文件在内的各种换成文件,为手...

苹果笔记本怎样重装系统(苹果笔记本怎样重装系统还原)

苹果笔记本电脑系统可以通过以下步骤进行重装:1.备份数据:在开始重装前,需要备份你的重要数据。你可以将数据存储到外部硬盘、云存储或其他可靠的设备中。2.下载安装器:从AppStore中下载macOS...

手机wifi打不开怎么办

手机wifi打不开的原因,可能集中在该手机出现了手机文件丢失、手机版本不稳定、手机文件出错以及手机wifi模块摔坏等故障造成的。手机wifi打不开修复教程1.wcnss_qcom_cfg文件丢失导...

bios恢复出厂设置后无法开机

可通过进入BIOS界面设置bios恢复出厂设置的方法解决,步骤如下:1、通过按Delete或数字键盘中的Del键进入BIOS。2、按箭头键输入并将光标移动到“加载设置默认值”项,然后按enter确认。...

电脑硬盘打不开怎么办(电脑硬盘打不开怎么办)

电脑硬盘坏了是不能开机的。硬盘坏道的修复方法:1、逻辑坏道的修复对于逻辑坏道,Windows自带的“磁盘扫描程序(Scandisk)”就是最简便常用的解决手段。如果硬盘出现了坏道,我们可在Window...

linux系统备份与还原工具(linux系统备份与还原工具在哪)

用GHOST对LINUX系统做备份1:要求将安装了LINUX系统的硬盘(原盘)整盘刻至另一硬盘(目标盘)。2:所需工具:DOS系统引导盘,GHOST2003(版本低的对文件格式不能很好的支持),原盘(...

pdf怎么转换成xml格式(如何将pdf格式转换成xml格式)

将PDF转换为XML需要使用专业的PDF转换工具。以下是一些常用的PDF转XML工具:1.AdobeAcrobatDC:AdobeAcrobatDC是一款功能强大的PDF编辑软件,其中包括P...

windows7iso文件(iso文件 win7)

利用winrar可以直接打开iso文件,如果双击不能直接打开需要设置winrar,步骤如下:1、启动winrar,点击选项菜单设置命令;2、点击综合选项卡,点击全部选择,点击确定即可。具体操作方法步骤...

路由器ip地址是什么意思(路由器的ip地址是)

路由器IP地址是指连接到互联网的路由器在局域网内的唯一标识符,一般为192.168.1.1或192.168.0.1等地址。通过路由器IP地址,用户可以通过浏览器等工具登录到路由器管理界面,进行网络设置...