百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术教程 > 正文

redis命令大全参考手册(redis命令详解)

mhr18 2024-10-21 05:41 25 浏览 0 评论

你一定要知道的是:redis的key名要区分大小写,在redis中除了 和空格外,其他的字符都可以做为key名,且长度不做限制,不过为了性能考虑,一般key名不要设置的太长。

一:redis命令基本篇

1.【 set key value 】 存入一个key和值。如:set myname reson

2.【 get key 】 读取一个key的值。

3.【 del key 】 删除一个key。

4.【 del key1 key2 ... keyN 】 删除多个key。如:del myname1 myname2

5.【 exists key 】 判断一个key是否存在。

6.【 type key 】 查看key的类型。

7.【 rename key keyNew 】 重命名key名。如:rename myname myname2

8.【 dbsize 】 查看当前库中的key的条数。

9.【 expire key time 】 指定key的过期时间,单位为秒。如:expire myname 9(设置9秒后过期)

10.【 ttl key 】 查看redis有多长时间过期,单位为秒。

11.【 keys * 】 列出当前库中所有的key名。

12.【 keys a* 】 列出当前库中所有以字符串“a"开头的key。

13.【 select db-index 】 选择一个数据库,如选择第一个数据库:select 0;选择第二个 select 1;默认有16个数据库,这个值可以在redis.conf中配置。

14.【 flushdb 】 清掉当前库中所有的key(生产环境下需谨慎操作)。

15.【 flushall 】 清掉所有库中全部的key(生产环境下需谨慎操作)。

16.【 mset key1 value1 key2 value2 ... keyN valueN 】 一次性存入多个key和值。

17.【 mget key1 key2 ... keyN 】 一次性读取多个key。

18.【 incr key 】 可以对key类型+1的操作(相当于编程语言里面的++),只能操作number型,操作字符串会报错。可对新值进行操作。

19.【 decr key 】 可以对key类型-1的操作(相当于编程语言里面的--),只能操作number型,操作字符串会报错。

20.【 incrby key num 】 同incr,对key的值加num,比如 incrby aa 10,对aa+10。

21.【 decrby key num 】 同上,对key的值减num。

22.【 append key value 】 对指定key的字符串进行追加,如果key为整形,会被转为字符串。如aa的值为9,执行append aa 10后,会变成910。

23.【 substr key start end 】 对key进行截取start到end个字符。如aa的值为:abcdef,执行substr aa 2 3后,返回“cd”。

二:redis链表类型(list)命令

24.【 lpush key value 】 往队列头部插入一个元素

25.【 rpush key value 】 从尾部插入一个元素

26.【 lpop key 】 从队列头部删掉一个元素

27.【 rpop key 】 从队列尾部删掉一个元素,并返回被删除元素的值

28.【 llen 】 返回队列的长度,即里面有多少个元素。不存在key返回0,不为队列类型的key会返回报错。

29.【 lrange key start end 】 返回队列从start到end之间的元素信息。

30.【 ltrim key start end 】 截取一个队列,只保留指定区间内的元素。

三:redis无序集合set类型命令

31.【 sadd key vaule 】 往集合中插入一个元素,如果value值已存在集合中,则返回0,不会被重复插入。

32.【 sinter key1 key2 ... keyN 】 取出n个key之间的交集。比如 key1里面有值a,b,c,d,e,key2里面有d,e,f,sinter key1 key2返回d,e。

33.【 sunion key1 key2 ... keyN 】 取出n个key之间的并集。比如 key1里面有值a,b,c,d,e,key2里面有d,e,f,sunion key1 key2返回a,b,c,d,e,f。

34.【 sdiff key1 key2 】 取出n个key之间的差集。比如 key1里面有值a,b,c,d,e,key2里面有d,e,f,sdiff key1 key2返回a,b,c;反过来sdiff key2 key1返回f。

35.【 smembers key 】 返回key集合中所有的元素,结果是无序的。

36.【 sismember key value 】 查看value这个值是否在key集合中。存在返回1,不存在返回0。

37.【 scard key 】 返回集合中有多少个元素。

38.【 smove key1 key2 value 】 把value从key1中移到key2中去。

39.【 srem key value1 value2 ... valueN 】 从key集合中删掉某些元素。

四:redis有序集合sorted set命令

40.【 zadd key v k 】 往key中添加一个元素,k为键,v为值。如:zadd artHits 99 12表示id为12的文章点击量为99次。

41.【 zrange key start end 】 根据v的值由小到大进行排序来获得start到end之间的元素。

注:0表示第一个元素,-1表示最后一个元素,-2表示倒数第二个元素,以此类推,如果要获取第一个到倒数第三个之间的元素,命令为:zrange key 0 -3。

42.【 zrevrange key start end 】 同上,根据v的值由大到小进行排序来获得start到end之间的元素。可以轻松取出点击量最高的前n篇文章。

43.【 zremrangebyrank key start end 】 删除集合中的元素。排序的方式为按照v由小到大的顺序,如果要删除key集合中的第一个值,则运行 zremrangebyrank artHits 0 0;删除前3个值:zremrangebyrank artHits 0 2。

44.【 zcard 】 返回key集合中元素的个数。

45.【 zrank key k 】 返回值k在集合key中排第几位,是按照v由小到大的顺序。排第一名返回0,第二返回1,以此类推。

46.【 zrevrank key k 】 同上,不同的是,按照v由大到小的顺序。可以轻松取出点击量最高的文章。

47.【 zscore key k 】 取出集合key中键为k对应的值v。

48.【 zrem key k 】 删除集合中指定元素。

49.【 zincrby key num k 】 给集合key中的元素k加上num,值针对整型。比如 zincrby artHits 3 12,给id为12的文章加上3个点击量。此时zscore artHits 12的结果是99+3为102。

五:redis哈希hash类型命令

50.【 hset key field value 】 设置hash field为指定值,如果key不存在,则先创建。

51.【 hmset key field1 value1 ... fieldN valueN 】 同时设置多个值。

52.【 hget key field 】 获取指定的hash field

53.【 hmget key field1 field1 ... fieldN 】 获取指定的多个hash field

54.【 hincrby key field num 】 将指定的hash field加上指定的值。

55.【 hexists key field 】 查看指定field是否存在。

56.【 hdel key field 】 删除指定的hash field。

57.【 hlen key 】 返回指定hash中field的数量。

58.【 hkeys key 】 返回hash所有的field。

59.【 hvals 】 返回hash中所有的value。

60.【 hgetall key 】 返回hash中所有的field和value。

相关推荐

使用 Docker 部署 Java 项目(通俗易懂)

前言:搜索镜像的网站(推荐):DockerDocs1、下载与配置Docker1.1docker下载(这里使用的是Ubuntu,Centos命令可能有不同)以下命令,默认不是root用户操作,...

Spring Boot 3.3.5 + CRaC:从冷启动到秒级响应的架构实践与踩坑实录

去年,我们团队负责的电商订单系统因扩容需求需在10分钟内启动200个Pod实例。当运维组按下扩容按钮时,传统SpringBoot应用的冷启动耗时(平均8.7秒)直接导致流量洪峰期出现30%的请求超时...

《github精选系列》——SpringBoot 全家桶

1简单总结1SpringBoot全家桶简介2项目简介3子项目列表4环境5运行6后续计划7问题反馈gitee地址:https://gitee.com/yidao620/springbo...

Nacos简介—1.Nacos使用简介

大纲1.Nacos的在服务注册中心+配置中心中的应用2.Nacos2.x最新版本下载与目录结构3.Nacos2.x的数据库存储与日志存储4.Nacos2.x服务端的startup.sh启动脚...

spring-ai ollama小试牛刀

序本文主要展示下spring-aiollama的使用示例pom.xml<dependency><groupId>org.springframework.ai<...

SpringCloud系列——10Spring Cloud Gateway网关

学习目标Gateway是什么?它有什么作用?Gateway中的断言使用Gateway中的过滤器使用Gateway中的路由使用第1章网关1.1网关的概念简单来说,网关就是一个网络连接到另外一个网络的...

Spring Boot 自动装配原理剖析

前言在这瞬息万变的技术领域,比了解技术的使用方法更重要的是了解其原理及应用背景。以往我们使用SpringMVC来构建一个项目需要很多基础操作:添加很多jar,配置web.xml,配置Spr...

疯了!Spring 再官宣惊天大漏洞

Spring官宣高危漏洞大家好,我是栈长。前几天爆出来的Spring漏洞,刚修复完又来?今天愚人节来了,这是和大家开玩笑吗?不是的,我也是猝不及防!这个玩笑也开的太大了!!你之前看到的这个漏洞已...

「架构师必备」基于SpringCloud的SaaS型微服务脚手架

简介基于SpringCloud(Hoxton.SR1)+SpringBoot(2.2.4.RELEASE)的SaaS型微服务脚手架,具备用户管理、资源权限管理、网关统一鉴权、Xss防跨站攻击、...

SpringCloud分布式框架&amp;分布式事务&amp;分布式锁

总结本文承接上一篇SpringCloud分布式框架实践之后,进一步实践分布式事务与分布式锁,其中分布式事务主要是基于Seata的AT模式进行强一致性,基于RocketMQ事务消息进行最终一致性,分布式...

SpringBoot全家桶:23篇博客加23个可运行项目让你对它了如指掌

SpringBoot现在已经成为Java开发领域的一颗璀璨明珠,它本身是包容万象的,可以跟各种技术集成。本项目对目前Web开发中常用的各个技术,通过和SpringBoot的集成,并且对各种技术通...

开发好物推荐12之分布式锁redisson-sb

前言springboot开发现在基本都是分布式环境,分布式环境下分布式锁的使用必不可少,主流分布式锁主要包括数据库锁,redis锁,还有zookepper实现的分布式锁,其中最实用的还是Redis分...

拥抱Kubernetes,再见了Spring Cloud

相信很多开发者在熟悉微服务工作后,才发现:以为用SpringCloud已经成功打造了微服务架构帝国,殊不知引入了k8s后,却和CloudNative的生态发展脱轨。从2013年的...

Zabbix/J监控框架和Spring框架的整合方法

Zabbix/J是一个Java版本的系统监控框架,它可以完美地兼容于Zabbix监控系统,使得开发、运维等技术人员能够对整个业务系统的基础设施、应用软件/中间件和业务逻辑进行全方位的分层监控。Spri...

SpringBoot+JWT+Shiro+Mybatis实现Restful快速开发后端脚手架

作者:lywJee来源:cnblogs.com/lywJ/p/11252064.html一、背景前后端分离已经成为互联网项目开发标准,它会为以后的大型分布式架构打下基础。SpringBoot使编码配置...

取消回复欢迎 发表评论: