Redis常用命令--Keys
Redis是一个key-value型的数据库。
所以在Redis也提供了很多操作key的命令,大概有22个。
EXISTS key [key ...]:查询一个key是否存在,时间复杂度为O(1),存在返回1,否则返回0
DEL key [key ...]:删除指定的key(一个或多个),时间复杂度O(N),N为要删除的key的个数
DUMP key:序列化给定key,并返回被序列化的值,使用RESTORE命令可以把这个值反序列化为Redis的键。
RESTORE key ttl serialized-value [REPLACE]:反序列化给定的序列化值,并将它和给定的key关联。
127.0.0.1:6379> exists name age
(integer) 0
127.0.0.1:6379> set name zhangsan
OK
127.0.0.1:6379> exists name age
(integer) 1
127.0.0.1:6379> set age 18
OK
127.0.0.1:6379> exists name age
(integer) 2
127.0.0.1:6379> del name
(integer) 1
127.0.0.1:6379> dump age
"\x00\xc0\x12\b\x00\xf4\xf4\x92\xf0\xbc8\xce\x13"
127.0.0.1:6379> del age
(integer) 1
127.0.0.1:6379> exists name age
(integer) 0
127.0.0.1:6379> restore name2 0 "\x00\xc0\x12\b\x00\xf4\xf4\x92\xf0\xbc8\xce\x13"
OK
127.0.0.1:6379> get name2
"18"
127.0.0.1:6379>
KEYS pattern:查找所有匹配给定的模式的键,
*:匹配0个或多个字符
?:匹配一个字符
[a,b。。。]:匹配其中的某个字符
特殊符号使用'\'隔开
时间复杂度为O(N),N为数据库中key的数量
RENAME key newkey:将一个key重命名,时间复杂度O(1)。
当key和newkey相同或者key不存在的时候,返回一个错误,当newkey已经存在时覆盖
RENAMENX key newkey:重命名一个key,新的key必须是不存在的key,时间复杂度O(1)。
RANDOMKEY :从当前数据库中随机返回一的key,时间复杂度O(1)。
TYPE key:获取key的存储类型,时间复杂度O(1)。
127.0.0.1:6379> keys *
(empty list or set)
127.0.0.1:6379> mset name zhangsan age 22 address shanghai
OK
127.0.0.1:6379> mset nomn lisi
OK
127.0.0.1:6379> mset nime wangwu
OK
127.0.0.1:6379> keys *
1) "nomn"
2) "name"
3) "age"
4) "address"
5) "nime"
127.0.0.1:6379> keys n?me
1) "name"
2) "nime"
127.0.0.1:6379> keys n[ai]me
1) "name"
2) "nime"
127.0.0.1:6379> rename nomn nome
OK
127.0.0.1:6379> renamenx nome name
(integer) 0
127.0.0.1:6379> renamenx nome name2
(integer) 1
127.0.0.1:6379> randomkey
"nime"
127.0.0.1:6379> randomkey
"address"
127.0.0.1:6379> type nime
string
127.0.0.1:6379> type name
string
127.0.0.1:6379>
EXPIRE key seconds:设置一个key的过期的秒数,当过期时,会自动删除。时间复杂度O(1)。
PEXPIRE key milliseconds:设置key的有效时间以毫秒为单位,时间复杂度O(1)。
TTL key:获取key的有效时间(单位:秒),时间复杂度O(1)。
PTTL key:获取key的有效毫秒数,时间复杂度O(1)。
EXPIREAT key timestamp:设置一个UNIX时间戳的过期时间
PEXPIREAT key milliseconds-timestamp:设置key的到期UNIX时间戳以毫秒为单位
PERSIST key:移除key的过期时间
127.0.0.1:6379> set name lisi
OK
127.0.0.1:6379> ttl name
(integer) -1
127.0.0.1:6379> pttl name
(integer) -1
127.0.0.1:6379> expire name 20
(integer) 1
127.0.0.1:6379> ttl name
(integer) 17
127.0.0.1:6379> expire name 20
(integer) 1
127.0.0.1:6379> pttl name
(integer) 12234
127.0.0.1:6379> persist name
(integer) 0
127.0.0.1:6379> get name
(nil)
127.0.0.1:6379> set name lisi
OK
127.0.0.1:6379> expire name 30
(integer) 1
127.0.0.1:6379> pttl name
(integer) 21299
127.0.0.1:6379> persist name
(integer) 1
127.0.0.1:6379> ttl name
(integer) -1
127.0.0.1:6379> get name
"lisi"
127.0.0.1:6379>
SCAN cursor [MATCH pattern] [COUNT count]:增量迭代key
MOVE key db:移动一个key到另一个数据库
MIGRATE host port key destination-db timeout [COPY] [REPLACE]:原子性的将key从redis的一个实例移到另一个实例
OBJECT subcommand [arguments [arguments ...]]:检查内部的再分配对象
SORT key [BY pattern] [LIMIT offset count] [GET pattern [GET pattern ...]] [ASC|DESC] [ALPHA] [STORE destination]:对队列、集合、有序集合排序
WAIT numslaves timeout:Wait for the synchronous replication of all the write commands sent in the context of the current connection
Redis常用命令--Keys的更多相关文章
- Redis常用命令
Redis常用命令Redis提供了丰富的命令对数据库和各种数据类型进行操作,这些命令可以再Linux终端使用.1.键值相关命令2.服务器相关命令 一.键值相关命令 1.get get 键值 当 key ...
- 第2讲 Redis常用命令与高级应用
目录 一.redis数据类型 5. sorted sets类型和操作 二.Redis常用命令 1.键值相关命令 2.服务器相关命令 三. redis高级应用 1. 给redis服务器设置密码 2.持久 ...
- Redis常用命令手册:服务器相关命令
Redis提供了丰富的命令(command)对数据库和各种数据类型进行操作,这些command可以在Linux终端使用.在编程时,比如各类语言包,这些命令都有对应的方法.下面将Redis提供的命令做一 ...
- redis redis常用命令及内存分析总结(附RedisClient工具简介
redis常用命令及内存分析总结(附RedisClient工具简介 by:授客 QQ:1033553122 redis-cli工具 查看帮助 连接redis数据库 常用命令 exists key se ...
- Redis常用命令与高级应用
附: 127.0.0.1:6379> set xiaofei 小飞 OK 127.0.0.1:6379> get xiaofei "\xe5\xb0\x8f\xe9\xa3\x9 ...
- redis配置密码 redis常用命令
redis配置密码 1.通过配置文件进行配置yum方式安装的redis配置文件通常在/etc/redis.conf中,打开配置文件找到 [plain] view plain copy #requi ...
- No-sql之redis常用命令
转自:http://blog.csdn.net/nicewuranran/article/details/51793760 No-SQL之Redis 介绍 Redis是一种基于内存存储的key-val ...
- redis常用命令-2
redis常用命令 type your_key #查看Key类型 del your_key #删除key keys * #所有key info #信息 /usr/local/bin/redis-cli ...
- Redis - 常用命令操作
常用命令keys: keys * 查看符合条件的所有key exists: exists key 查看key是否存在 del: del k ...
随机推荐
- [Java] JDK 环境配置(图文)
Windows10 上的安装配置 1.前往 JDK 官网下载对应 jdk 版本安装包: http://www.oracle.com/technetwork/java/javase/downloads/ ...
- 有序的map LinkedHashMap
HashMap是无序的,HashMap在put的时候是根据key的hashcode进行hash然后放入对应的地方.所以在按照一定顺序put进HashMap中,然后遍历出HashMap的顺序跟put的顺 ...
- 网络1712--c语言第一次作业总结
1.作业亮点 1.1大家均能较为独立自主地完成第一次c语言作业,无明显抄袭现象 1.2 以下几位同学博文写的较为优秀,可作为范例供大家参考 田亚琴--态度端正,及时回复评论并及时完善修改博文 戴洁-- ...
- formidable 表单文件和数据提交
只要涉及文件上传,那么form标签要加一个属性: <form action="http://127.0.0.1/dopost" method="post" ...
- python利用twilio模块给自己发短信
1.访问http://twilio.com/并填写注册表单.注册了新账户后,你需要验证一个手机号码,短信将发给该号码. 2.Twilio 提供的试用账户包括一个电话号码,它将作为短信的发送者.你将需要 ...
- 构建微服务开发环境4————安装Docker及下载常用镜像
[内容指引] 下载Docker: Mac下安装Docker: Windows下安装Docker; 下载常用docker镜像. 一.下载Docker 1.Mac适用Docker下载地址:https:// ...
- java实现红包的分配算法
个人推测,微信红包在发出的时候已经分配好金额.比如一个10元的红包发给甲乙丙三个人,其实在红包发出去的时候,已经确定了第一个会领取多少,第二个会领取多少金额. 而不是在领取的时候才计算的.下面贴出实现 ...
- centos7 编译安装greenplum5.7
一.配置系统 安装是以一个主节点,三个子节点进行安装.gp是在github上下载的5.7的源码.地址https://github.com/greenplum-db/gpdb/tree/5.7.0. 1 ...
- python之路--day6--字符编码
一.知识储备 cpu--控制和运算 内存--暂时存储cpu需要的数据 硬盘--永久保存数据2.文本编辑器的原理存储原理 1,启动文本编辑器 2,在编辑器上输入内容---此时输入内容还在内存上 3,保存 ...
- GIT入门笔记(15)- 链接到私有GitLab仓库
GitLab是利用 Ruby on Rails 一个开源的版本管理系统,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目.它拥有与Github类似的功能,能够浏览源代码,管理 ...