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的更多相关文章

  1. Redis常用命令

    Redis常用命令Redis提供了丰富的命令对数据库和各种数据类型进行操作,这些命令可以再Linux终端使用.1.键值相关命令2.服务器相关命令 一.键值相关命令 1.get get 键值 当 key ...

  2. 第2讲 Redis常用命令与高级应用

    目录 一.redis数据类型 5. sorted sets类型和操作 二.Redis常用命令 1.键值相关命令 2.服务器相关命令 三. redis高级应用 1. 给redis服务器设置密码 2.持久 ...

  3. Redis常用命令手册:服务器相关命令

    Redis提供了丰富的命令(command)对数据库和各种数据类型进行操作,这些command可以在Linux终端使用.在编程时,比如各类语言包,这些命令都有对应的方法.下面将Redis提供的命令做一 ...

  4. redis redis常用命令及内存分析总结(附RedisClient工具简介

    redis常用命令及内存分析总结(附RedisClient工具简介 by:授客 QQ:1033553122 redis-cli工具 查看帮助 连接redis数据库 常用命令 exists key se ...

  5. Redis常用命令与高级应用

    附: 127.0.0.1:6379> set xiaofei 小飞 OK 127.0.0.1:6379> get xiaofei "\xe5\xb0\x8f\xe9\xa3\x9 ...

  6. redis配置密码 redis常用命令

    redis配置密码 1.通过配置文件进行配置yum方式安装的redis配置文件通常在/etc/redis.conf中,打开配置文件找到 [plain] view plain copy   #requi ...

  7. No-sql之redis常用命令

    转自:http://blog.csdn.net/nicewuranran/article/details/51793760 No-SQL之Redis 介绍 Redis是一种基于内存存储的key-val ...

  8. redis常用命令-2

    redis常用命令 type your_key #查看Key类型 del your_key #删除key keys * #所有key info #信息 /usr/local/bin/redis-cli ...

  9. Redis - 常用命令操作

    常用命令keys:        keys *        查看符合条件的所有key exists:        exists key    查看key是否存在 del:        del k ...

随机推荐

  1. PHP 引用是个坑,请慎用

    去年我参加了很多次会议,其中八次会议里我进行了相关发言,这其中我多次谈到了 PHP 的引用问题,因为很多人对它的理解有所偏差.在深入讨论这个问题之前,我们先回顾一下引用的基本概念,明确什么是" ...

  2. MySQL之数据的insert-delete-update操作

    主要是对数据的一些基本操作:增加.删除.修改

  3. C语言程序设计课程总结

    第一次教授C语言程序设计课程,相比计算机组成原理.arm体系结构等偏向硬件的课程,C的教学方式要灵活一些.计算机组成原理课程偏向理论,哈尔滨工业大学的计算机组成原理是国家精品课,增加了mooc+spo ...

  4. Beta No.2

    今天遇到的困难: 组员对github极度的不适应 Android Studio版本不一致项目难以打开运行 移植云端的时候,愚蠢的把所有项目开发环境全部搬上去.本身云的内存小,性能差,我们花费了太多时间 ...

  5. C语言-最后一次作业

    1.当初你是如何做出选择计算机专业的决定的? 经过一个学期,你的看法改变了么,为什么? 你觉得计算机是你喜欢的领域吗,它是你擅长的领域吗? 为什么? 我当初选择计算机专业是因为我是真的很向往计算机这方 ...

  6. bzoj千题计划274:bzoj3779: 重组病毒

    http://www.lydsy.com/JudgeOnline/problem.php?id=3779 有一棵树,初始每个节点有不同的颜色 操作1:根节点到x的路径上的点 染上一种没有出现过的颜色 ...

  7. PHP获取短信验证码

    PHP如何获取短信验证码?以下是创蓝253短信平台下的PHP接口代码案例:   <?php header("Content-type:text/html; charset=UTF-8& ...

  8. LR回放https协议脚本失败: 错误 -27778: 在尝试与主机“www.baidu.com”connect 时发生 SSL 协议错误

    今天用LR录制脚本协议为https协议,回放脚本时出现报错: Action.c(14): 错误 -27778: 在尝试与主机"www.baidu.com"connect 时发生 S ...

  9. WPF treeview扩展

    记录一下工作中遇到的问题,以便以后忘记了可以来看. 在工作中遇到一个问题,就是要实现类型如下的界面,没有使用Telerik和Dev库.本来最开始是想使用Datagrid,但不知道怎么实现treevie ...

  10. javascript 中的类型

    javascript 中的类型 js 是一门弱语言,各式各样的错误多种多样,特别是确定返回值有问题的时候,你会用什么来进行表示错误? 我一般有三个选择: null '' error {} 第一个选择 ...