Redis 通用命令
KEYS
- 语法: KEYS pattern
- 功能: 返回所有匹配 pattern 的键
- 可以使用该命令的Redis版本: 1.0.0
- 时间复杂度: O(N) N指的是在数据库中的键的数量
不建议在生成环境使用该命令,因为是扫描整个数据库的键查询,会造成阻塞
支持的全局样式模式:
- h?llo 匹配 hello,hallo并且hxllo
- h*llo 匹配 hllo 和 heeeello
- h[ae]llo 匹配 hello 和 hallo,不匹配 hillo
- h[^e]llo 匹配 hallo, hbllo, ... 但不匹配 hello
- h[a-b]llo 匹配 hallo 和 hbllo
如果要逐字匹配特殊字符,请使用转义字符 \
# 查看所有的键
127.0.0.1:6379> keys *
1) "age"
2) "color"
3) "gender"
4) "name"
# 查看以a开头的键
127.0.0.1:6379> keys a*
1) "age"
# 查看包含a的键
127.0.0.1:6379> keys *a*
1) "age"
2) "name"
127.0.0.1:6379>
DEL
- 语法: DEL key [key ...]
- 功能: 删除指定的键,如果键不存在,则忽略它
- 可以使用该命令的Redis版本: 1.0.0
- 时间复杂度: O(N) 其中 N 是要移除的键的数量, 当要删除的键包含字符串以外的值时,该键的单个复杂度为 O(M),其中 M 是列表、集合、排序集或散列中的元素数。删除包含字符串值的单个键是 O(1)。
示例:
127.0.0.1:6379> set name tom
OK
127.0.0.1:6379> keys *
1) "name"
127.0.0.1:6379> del name
(integer) 1
127.0.0.1:6379> keys *
(empty array)
127.0.0.1:6379>
EXISTS
- 语法: EXISTS key [key ...]
- 功能: 检查指定的键是否存在
- 可以使用该命令的Redis版本: 1.0.0 (3.0.3版本之后才接受多个key)
- 时间复杂度: O(N) N指的是要检查的键的数量
- 返回一个整数, 它指的是要检查的键中, 存在的键的个数
示例:
127.0.0.1:6379> keys *
1) "age"
2) "name"
127.0.0.1:6379> EXISTS name
(integer) 1
127.0.0.1:6379> EXISTS name age
(integer) 2
127.0.0.1:6379> EXISTS gender
(integer) 0
127.0.0.1:6379> EXISTS name gender
(integer) 1
127.0.0.1:6379>
EXPIRE
- 语法: EXPIRE key seconds [ NX | XX | GT | LT]
- 功能: 设置键的超时时间(单位/秒),超时后,键被自动删除
- 可以使用该命令的Redis版本: 1.0.0
- 时间复杂度: O(1)
- 返回一个整数
- 1 如果超时被设置成功
- 0 如果超时被设置失败 (例如:键不存在,或者由于提供的参数而跳过了操作)
*注意: 这个超时的设置只会被删除或覆盖键内容的命令清除,包括 DEL, SET, GETSET 和 所有的 STORE 命令。
这意味着,所有在概念上更改存储在键中的值而不使用新值替换的操作都将保持超时不变。
例如: 使用 INCR 增加键的值, 使用 LPUSH 向列表压入新的值,或者使用 HSET 修改散列的字段值, 这些操作都不会影响超时时间。
TTL
- 语法: TTL key
- 功能: 返回具有超时的键的剩余生存时间(单位/秒)
- 可以使用该命令的Redis版本: 1.0.0
- 时间复杂度: O(1)
- 返回一个整数, 以秒为单位的 TTL
- 如果键不存在,该命令将返回 -2 (2.8.0 版本增加的)
- 如果键存在但没有关联的过期,则该命令返回 -1
示例:
127.0.0.1:6379> SET name tom
OK
127.0.0.1:6379> EXPIRE name 100
(integer) 1
127.0.0.1:6379> TTL name
(integer) 98
127.0.0.1:6379> SET age 22
OK
127.0.0.1:6379> TTL age
(integer) -1
127.0.0.1:6379>
Redis 通用命令的更多相关文章
- redis通用命令
1.keys pattern 含义:查找所有符合给定模式(pattern)的key keys * 遍历所有key keys he[h-l]* 遍历以he开头,第三个字符为h-l之间的所有key key ...
- Redis通用命令(七)
Keys的通用操作: (1)获得所有的keyskeys *(2)查看my开头的keykeys my?(3)删除keydel key1 key2(4)key是否存在exists key1 exists ...
- 02 redis通用命令操作
set hi hello 设置值 get hi 获取值 keys * 查询出所有的key memcached 不能查询出所有的key keys *h 模糊查找key keys h[ie] 模糊查找 k ...
- Redis入门到高可用(三)——通用命令
通用命令 参考 http://redisdoc.com/index.html 1. keys #查看所有key 时间复杂度:O(N), N 为数据库中 key 的数量. 127.0.0.1:637 ...
- Centos7.2下安装redis&通用键值命令
Centos7.2下安装redis&通用键值命令 Centos7.2下安装redis 官方网站:https://redis.io/ 1.进入/usr/local/src/目录 cd /usr/ ...
- 3年Java开发都知道的Redis数据结构和通用命令
Redis的数据结构 Redis支持多种不同的数据结构,包括5种基础数据结构和几种比较复杂的数据,这些数据结构可以满足不同的应用场景. 五种基础数据结构 String:字符串,是构建其他数据结构的基础 ...
- redis 学习(二)-- 通用命令
redis 学习(二)-- 通用命令 1. keys pattern 含义:查找所有符合给定模式(pattern)的key 命令 含义 keys * 遍历所有 key keys he[h-l]* 遍历 ...
- Redis 全局通用命令整理
转载请注明出处: 1.查看所有键 keys * 该命令会存在线程阻塞问题,keys 命令也可以通过正则匹配获取存在的缓存数据 2.查看键总数 dbsize dbsize命令会返回当前数据库中键的总数. ...
- Redis 常用命令学习一:通用的基本命令
1-链接,如果需要的 Redis 部署在远程机器上,可以通过以下命令链接,其中-h后面跟着主机名,-p后面跟端口名 redis-cli -h 233.2.2.4 -p 666 2-PING 命令用来测 ...
- 转:redis常用命令
一 Redis介绍 Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API.从2010年3月15日起,Redis的开发 ...
随机推荐
- [转]WorldWind开发中WorldWindowGLCanvas .setPreferredSize()函数找不到
值高温假期,无意翻到了csdn中三维GIS开发的专栏,讲的是worldwind Java三维GIS系统开发的东西,十分感兴趣.恰巧要求的环境已经存在,直接耍起来.将最新的Worldwind和JOGL下 ...
- 探探的IM长连接技术实践:技术选型、架构设计、性能优化
本文由探探服务端高级技术专家张凯宏分享,原题"探探长链接项目的Go语言实践",因原文内容有较多错误,有修订和改动. 1.引言 即时通信长连接服务处于网络接入层,这个领域非常适合用G ...
- 自动化测试工具-Katalon Studio
Katalon 代码片段: 1)if(WebUI.verifyTextPresent(findTestObject('Page_Skin/p_Are you ok?'),10,Fa ...
- 微服务实战系列(五)-注册中心Eureka与nacos区别-copy
1. 场景描述 nacos最近用的比较多,介绍下nacos及部署吧,刚看了下以前写过类似的,不过没写如何部署及与eureka区别,只展示了效果,补补吧. 2.解决方案 2.1 nacos与eureka ...
- java中属性和变量的区别与final和抽象类
属性和变量的区别 变量必须要有初始值: 属性可以没有初始值: 变量的范围只在当前大括号内有效: 属性是对象在哪里使用就在哪里有效: 属性的作用范围要比变量的大一些 属性和变量 public class ...
- Centos 7 单用户模式修改密码/配置
1.启动系统,启动项界面显示时,按"↑↓"键停留在此界面,按下"e"键进入编辑模式 2.利用"↑↓"键找到"linux16&quo ...
- 认识soui4js(第3篇):使用C/C++开发扩展模块
首先需要明确:JS代码本身不具备直接调用系统API的能力,JS代码能调用什么功能,都依赖于其它扩展模块提供了什么样的接口. soui4js模块将soui的界面能力作为一个js模块导出到了js中,使得j ...
- 玩转云端|天翼云边缘安全加速平台AccessOne实用窍门之让办公访问安全、高效又稳定
本文分享自天翼云开发者社区<玩转云端|天翼云边缘安全加速平台AccessOne实用窍门之让办公访问安全.高效又稳定>,作者:天翼云社区官方账号 随着社会信息化程度不断提高,远程办公已经成为 ...
- 使用CMD命令导出和导入IIS站点配置信息
1.导出导入某个站点 1.1.导出应用程序池和站点 1.1.1.导出某个应用程序池配置 具体导出命令如下所示: %windir%\system32\inetsrv\appcmd list apppoo ...
- 文本处理命令head tail more less tr cut paste wc
文本处理命令 命令**head tail more less tr cut paste wc** 磁盘分区利用率 df|tr -s ' ' :|cut -d : -f5 df|tr -s ' ' :| ...