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

【Redis】常见基本全局命令

在这里插入图片描述

一、Redis俩大核心命令

由于Redis是以键值对的形式进行数据存取,自然就离不开不断的存储和获取,而其所对应的命令则是set和get,如此说来二者为Redis的核心基础命令也不为过。
在这里插入图片描述

作用:用于存储Stirng类型的数据
返回:当key不存在时设置成功返回OK,当key存在时对原有值进行覆盖
参数:NX表示key不存在时进行存储,XX表示存在时进行存储,EX、PX为设置过期时间,EX时间为s,PX时间为ms

127.0.0.1:6379> set key 111		设置key——value
OK
127.0.0.1:6379> get key			获取value
"111"
127.0.0.1:6379> set key 222		再次设置key对应value值
OK
127.0.0.1:6379> get key			value值被覆盖
"222"
127.0.0.1:6379> set key 111 NX		
(nil)						key存在,设置失败返回nil
127.0.0.1:6379> set key 111 XX
OK							key存在,设置成功
127.0.0.1:6379> get key
"111"

在这里插入图片描述

作用:获取key所对应的值
返回:当key存在时返回value,不存在时返回nil,当key存储值不为string类型时返回报错,get只能用于string类型获取。

127.0.0.1:6379> set key 111
OK
127.0.0.1:6379> get key		获取value
"111"
127.0.0.1:6379> hset hash field 222	存储hash类型数据
(integer) 1
127.0.0.1:6379> get hash		尝试获取非string数据,获取失败报错
(error) WRONGTYPE Operation against a key holding the wrong kind of value

上述GET、SET只针对value为string类型时有效,value存储数据类型可以为String、Hash、List、Set、ZSet,不同数据结构都有不同种操作命令都是在此基础上进行拓展。

二、常见基本全局命令

在这里插入图片描述
作用:返回所有匹配参数的value值,具有以下几个参数

参数作用
匹配单个字符
*匹配0-nge字符
[ab]匹配中括号里的字符
[^a]排除中括号里的字符
[a-b]匹配中括号区间内的字符

在这里插入图片描述
作用:判断key是否存在,可同时判断多个key
返回:当ke存在时返回1,不存在时返回0,多个同时存在时返回存在的个数

127.0.0.1:6379> set key 111
OK
127.0.0.1:6379> exists key		key存在返回1
(integer) 1
127.0.0.1:6379> exists key2		key2不存在,返回0
(integer) 0
127.0.0.1:6379> set key2 222
OK
127.0.0.1:6379> set key3 333
OK
127.0.0.1:6379> exists key key2 key3	同时都存在,返回存在个数
(integer) 3

在这里插入图片描述
作用:删除存在的key
返回:key存在删除成功返回1,不存在删除失败返回0

127.0.0.1:6379> set key 111
OK
127.0.0.1:6379> set key2 222
OK
127.0.0.1:6379> keys *		查询存在的key
1) "key2"
2) "key"
127.0.0.1:6379> del key3	不存在删除失败返回o
(integer) 0
127.0.0.1:6379> del key2	存在删除成功返回1
(integer) 1
127.0.0.1:6379> keys *
1) "key"

在这里插入图片描述
作用:判断key所剩余的过期时间
返回:若key设置过期时间则返回过期时间,没设置则返回-1,key不存在返回-2

127.0.0.1:6379> set key 111
OK
127.0.0.1:6379> set key2 222 ex 60	设置过期时间60s
OK
127.0.0.1:6379> ttl key				未设置返回-1
(integer) -1
127.0.0.1:6379> ttl key2			设置返回过期时间
(integer) 51
127.0.0.1:6379> ttl key3			不存在返回-2
(integer) -2

注:ex设置过期时间单位为s,用ttl查看过期时间;pex设置过期时间单位为ms,用pttl查看过期时间

在这里插入图片描述
作用:返回value中存储数据类型
返回:返回值可能为String、Hash、List、Set、ZSet

127.0.0.1:6379> set key 111
OK
127.0.0.1:6379> hset key2 field hello
(integer) 1
127.0.0.1:6379> type key
string
127.0.0.1:6379> type key2
hash

问:Redis中的过期策略是如何实现的?

答:主要通过惰性删除和定期删除两种方式进行实现
惰性删除:当某个key存在并设置过期时间,再次访问该key时发现已经过期便进行删除。
定期删除:定期扫描一定数量的key来进行检查删除,少量多次进行避免线程的阻塞。


http://www.kler.cn/a/371379.html

相关文章:

  • 在Excel中如何快速筛选非特定颜色
  • EXPLAIN 针对性优化 SQL 查询
  • 【大数据学习 | kafka】kafka的shell操作
  • 被上传文件于后端的命名策略
  • Flutter Image和Text图文组件实战案例
  • Hash表算法
  • GIT分布式版本控制系统基础操作
  • Ubuntu下搭建自己的Docker镜像仓库
  • Xcode 16.1 (16B40) 发布下载 - Apple 平台 IDE
  • Oracle创建存储过程,创建定时任务
  • 太速科技-430-基于RFSOC的8路5G ADC和8路10G的DAC PCIe卡
  • 【C++单调栈】1673. 找出最具竞争力的子序列|1802
  • P1012 [NOIP1998 提高组] 拼数
  • 浏览器HTTP缓存解读(HTTP Status:200 304)
  • 【Mac】安装CosyVoice
  • spyglass关于cdc检测的一处bug
  • 精益求精:提升机器学习模型表现的技巧”
  • 如何批量注册多个Outlook邮箱账号并避免关联
  • apisix的原理及作用,跟spring cloud gateway有什么区别?
  • 《Linux运维总结:基于ARM64+X86_64架构CPU使用docker-compose一键离线部署redis 6.2.14容器版哨兵集群》
  • angular使用http实现get和post请求
  • TimyNote:轻便高效的跨平台笔记工具
  • 如何使用Photoshop修改图标为纯色
  • MATLAB细胞干扰素信号矩阵和微分方程计算分析
  • 【06-并发控制:互斥 (1)-课堂示例代码运行】 modelchecker的使用封装 Peterson算法的修改和验证
  • 迈威通信西安采矿展大放异彩,驱动煤矿智能转型加速跑