Redis 常用命令

Redis 通用命令


文章目录


get & set

set key value

第一个是 key ,第二个是 value,输入 set 时,就已经提示了是这个 key value 结构


get key

通过 key 获取 value ,查询不存在的key时,查询出来的是nil,也就是 null 的意思


操作不同的数据结构 ,就会有不同的命令,全局命令就是能搭配任意一个数据结构来使用的命令


keys

返回所有满足样式(pattern)的key ,-----通过一些特殊符号(通配符 )来描述 key 的模样,匹配上述模样的 key 就能被 查询 出来
时间复杂度 O(n)

  • **h?llo 匹配 hello,hallo...(?匹配任意 一个 字符)
  • h*llo 匹配 hllo,heeeello...(*匹配0个或者多个 任意字符)
  • h[ae]llo 匹配 hallo~hello([ae]表示只能匹配到 a ~ e,即 a b c d e,相当于固定选项**)**
  • h[^e]llo 匹配 hallo,hbllo...( [^e]** 表示只有 e 匹配不了,别的都行)**
  • h[a-b]llo 匹配 hallo 和 hbllo(匹配 a-b 的范围,并且是 闭区间)


测试
h?llo

h*llo

h[abe]llo

h[^e]llo

h[a-e]llo


exists

EXISTS key [key .....]

判定 key 是否存在
返回值: key 存在的个数
时间复杂度 O(1)


del(delete)

DEL key [key ...]

可以删除一个或者多个 key
时间复杂度:O(1)
redis 主要的应用场景,就是作为 缓存 ,redis里存的只是热点数据,全量数据在mysql数据库中,如果del误删了几个,影响不会很大


integer 2 是因为 aaa 不存在


expire

EXPIRE key seconds

给指定的 key 设置 秒级 过期时间
pexpire key 毫秒级
时间复杂度:O(1)
返回值:1成功,0失败


TTL

TTL key

获取指定key的过期时间,秒级
PTTL 毫秒级
时间复杂度:O(1)
返回值:剩余过期时间 / -1 表示没有关联过期时间 / -2 表示key不存在


键的过期机制

定期删除

过期删除

假设这个 key 已经到了过期时间,但是暂时还没有删除它,key还存在,紧接着后面一次访问正好用到了这个key
于是这次访问就会让Redis服务器触发 删除 key 的操作,同时再返回一个 nil


type

type key

返回对应 key 的数据类型
时间复杂度:O(1)
返回值:none,string,list,set,zset,hash,stream


相关推荐
青春:一叶知秋3 小时前
【Redis存储】List列表
数据库·redis·缓存
爆更小哇5 小时前
MyBatis的TypeHandler :优雅地实现数据加密与解密
数据库·后端·mybatis
likuolei6 小时前
Eclipse 创建 Java 接口
java·数据库·eclipse
w***15316 小时前
Spring boot启动原理及相关组件
数据库·spring boot·后端
q***65696 小时前
PostgreSQL 17 发布了!非常稳定的版本
数据库·postgresql
云飞云共享云桌面6 小时前
如何降低非标自动化工厂的研发软件采购成本
运维·服务器·网络·数据库·性能优化·自动化
泰克教育官方账号6 小时前
泰涨知识 | 什么是自动化巡检?
运维·服务器·数据库
oneslide7 小时前
分享一个MySQL数据库备份恢复脚本--II
数据库·mysql
Gauss松鼠会7 小时前
【GaussDB】使用DBLINK连接到ORACLE
数据库·sql·database·gaussdb
Arva .7 小时前
深度分页、读写分离、分库分表后 SQL 该如何优化?
数据库·sql