2、keys相关命令
redis的官网http://redis.io是学习redis的重要资源库,所有命令都分门别类的罗列在了这里http://redis.io/commands。
1、数据库选择命令:
SELECT index //选择当前连接使用哪个数据库
默认配置下一个redis-server服务会开启16个数据库,其index位0~15,可以通过SELECT命令来选择使用哪个库,redis-cli连接默认使用0号库。
注意:redis命令都是作用在已选择的库上面。比如,你使用“SELECT 1”选择了1号库,那么随后的redis命令都是作用在这个库上面,eg.命令“KEYS *”只会列出1号库中所有的键。
2、与key相关的常用命令:
KEYS pattern //列出所有与pattern匹配的“键”,支持glob-style pattern
TYPE key //检测key的类型
EXISTS key [key ...] //返回key列表中“键”存在的个数 /* 移动和删除 */
MOVE key db //将当前数据库中key移动到db指定的数据库中
DEL key [key ...] //删除列表中的key /* 重命名相关 */
RENAME key newkey //重命名
RENAMENX key newkey //重命名,只有在newkey不存在的情况下才执行 /* 存活时间相关 */
EXPIRE key seconds //设置key的存活时间,指定多少“秒”后失效
PEXPIRE key milliseconds //设置key的存活时间,指定多少“毫秒”后失效
EXPIREAT key timestamp //设置key的存活时间,使用“秒”绝对时间指定
PEXPIREAT key milliseconds-timestamp //设置key存活时间,使用“毫秒”绝对时间指定 TTL key //返回key剩余的存活时间,单位秒
PTTL key //返回key剩余的存货时间,单位毫秒
3、命令使用和解析
①、KEYS pattern
功能:查找当前库中所有匹配pattern模式的key
时间复杂度:O(N),N为当前库中key的个数。如果当前库中存放的key非常多,则要慎用此命令。
pattern:支持glob-style模式:?匹配1个字符,*匹配0个或多个字符,[ae]匹配字符“a”或者是“e”,[^e]匹配“非e”外的任何一个字符,[a-c]匹配“a/b/c”中的任何一个字符,匹配特殊字符需要用反斜杠“\”转义。
example:
②、TYPE key
作用:返回key的类型(Redis共有5大数据类型)。
example:
③、EXISTS key [key ...]
功能:返回key列表中“键”存在的个数。如果列表中只有一个key,则就是检查这个key是否存在。
时间复杂度:O(1)
example:
④、MOVE key db
功能:将当前数据库中的key移动到db指示的数据库中,db表示数据库编号
时间复杂度:O(1)
example:
⑤、DEL key [key ...]
功能:删除列表中的key
时间复杂度: O(N),其中N表示列表中“实际落地的键值对”个数。删除一个string类型key的时间复杂度为 O(1),删除一个含有M个键值对的key(集合类型set,hash,list,sorted set)的时间复杂度为 O(M)。
example:
⑥、RENAME key newkey
功能:将key重命名为newkey,注意:如果newkey存在,此操作会覆盖newkey的值。
时间复杂度:O(1)
example:
⑦、REBANENX key newkey
功能:同RENAME,区别在于此命令只有在newkey不存在的情况下才执行。
⑧、TTL key / PTTL key
功能:都是检测key还能存活多长时间,区别在于TTL返回值的单位是“秒”,PTTL返回值的单位是“毫秒”。其返回值有三种状态:-2—不存在,-1—永久存活,大于0的值表示剩余存活时间。
时间复杂度:O(1)。
example:
⑨、EXPIRE key seconds / PEXPIRE milliseconds
功能:指定key的存活时间。区别在于:前者的单位是“秒”,后者的单位是“毫秒”。
时间复杂度:O(1)
注意:如果不使用expire/pexpire/expireat/pexpireat指定key的生命周期,则默认为“永不过期”。
2、keys相关命令的更多相关文章
- Redis常用命令手册:服务器相关命令
Redis提供了丰富的命令(command)对数据库和各种数据类型进行操作,这些command可以在Linux终端使用.在编程时,比如各类语言包,这些命令都有对应的方法.下面将Redis提供的命令做一 ...
- redis的hash, list, set类型相关命令
hash相关命令: 1. hset HSET key field value 将哈希表key中的域field的值设为value.如果key不存在,一个新的哈希表被创建并进行hset操作.如果域fiel ...
- Redis学习笔记(二)-key相关命令【转载】
转自 Redis学习笔记(二)-key相关命令 - 点解 - 博客园http://www.cnblogs.com/leny/p/5638764.html Redis支持的各种数据类型包括string, ...
- Redis key 相关命令
其实本质上,Redis 就是一个Key---Value 数据库.这里我先介绍下Redis中关于的key的相关命令, 注意:key是字符串存储,但是不能使用 空格 或者 “\n”,value 则可以使用 ...
- redis-key相关命令
本篇主要介绍和redis的key进行操作的相关命令. 命令 描述 复杂度 返回值 DEL key [key ...] 删除给定的一个或多个 key .不存在的 key 会被忽略.删除单个列表.集合.有 ...
- 05_NoSQL数据库之Redis数据库:Redis的常用命令,键值相关命令和服务器相关命令
Redis常用命令 Redis提供了丰富的命令对数据库和各种数据库类型进行操作,这些命令可以再Linux终端使用. 键值相关命令: Keys:返回满足给定pattern的所有key 用表达式*表 ...
- [Redis]Redis的五种数据类型与键值/服务器相关命令
-------------------------------------------------------------------------------------- String(字符串):最 ...
- Redis集群维护、运营的相关命令与工具介绍
Redis集群的搭建.维护.运营的相关命令与工具介绍 一.概述 此教程主要介绍redis集群的搭建(Linux),集群命令的使用,redis-trib.rb工具的使用,此工具是ruby语言写的,用于集 ...
- redis 从0 到 1 键值相关命令 服务器相关命令
keys * 获取所有的key 忽略其数据类型 数据为空 返回(empty list or set) keys a* .*b 获取以a开头 或者 以b结尾的key 返回(empty list ...
随机推荐
- linux下升级svn版本到1.8
CentOS6.5默认yum安装的svn版本为1.6,有时候遇到比较高级的应用就可能不够使用,这时候就需要升级一下svn的版本,可以升级到的版本为1.8 ====== 完美的分割线 ====== 1. ...
- phpcms 缓存模板文件
caches\caches_template\default\content 对应模板文件的编译
- 编程之美Ex2——字符串移位包含的问题
给定两个字符串s1,s2,要求判定s2是否能够被s1做循环移位得到的字符串包含. 例如, 给定s1=AABCD和s2=CDAA,返回true: 给定s1=ABCD和s2=ACBD,返回false. 法 ...
- a链接嵌套无效,嵌套链接最优解决办法
<a>不支持嵌套.例如: <a href="#1">11111111111<a href="#2">22222222222& ...
- FastJson的一些使用
前言 最近经常使用json的一些转换,使用的是fastjson,所以就对fastjson进行了一些汇总,记录下来. 正文 主要的api 首先是一些类库的说明: SerializeWriter:相当于S ...
- JanusGraph Server配置
转自:https://www.cnblogs.com/jiyuqi/p/320267ff0b5052fad4613945e58ea1f1.html JanusGraph使用Gremlin Server ...
- Emgucv3.0的安装与配置
环境:vs2015+Emgucv3.0 Emgu Cv简介: Emgu CV 是.NET平台下对OpenCV图像处理库的封装.也就是OpenCV的.NET版.它运行在.NET兼容的编程语言下调用Ope ...
- MyBatis之一对多映射查询sql配置文件。
学生---文章的模型一对多模型 学生student.java类 package com.bjsxt.sxf.po; import java.util.Date; import java.util.Li ...
- python pandas 对各种文件的读写 IO tools
The pandas I/O API is a set of top level reader functions accessed like pd.read_csv() that generally ...
- Clair:CoreOS发布的开源容器漏洞分析工具
Clair为何而生:提升安全 软件世界里,安全漏洞会一直存在.好的安全实践意味着要对可能出现的事故未雨绸缪 - 即尽早发现不安全的软件包,并准备好快速进行升级.而Clair就是设计来帮助你找出容器中可 ...