【Redis】命令学习笔记——键(key)(20个超全字典版)
安装完redis和redis-desktop-manager后,开始学习命令啦!本篇基于redis 4.0.11版本,从对键(key)开始挖坑!
准备工作,使用db1(默认db0,由于之前练习用db0,这里为避免混淆)。再创建一些数据如下:
切换成db1
select 1
创建键值为runoobkey redis的数据
SET runoobkey redis
获取键为runoobkey的值
get runoobkey
详细介绍:
| 序号 | 命令 | 描述 | 实例 | 返回 |
|
1 |
DEL key | 该命令用于在 key 存在时删除 key | 删除键runoobkey:del runoobkey |
成功:(integer) 1 失败:(integer) 0 |
| 2 | DUMP key | 序列化给定 key ,并返回被序列化的值 | 将键为runoobkey序列化:dump runoobkey | "\x00\x05redis\b\x00|}ENK67\x19" |
| 3 | EXISTS key | 检查给定 key 是否存在 | 检查是否存在runoobkey:EXISTS runoobkey |
存在:(integer) 1 不存在:(integer) 0 |
| 4 | EXPIRE key seconds | 为给定 key 设置过期时间 | 键为name设置过期时间为100秒:EXPIRE name 100 |
成功:(integer) 1 失败:(integer) 0 |
| 5 | EXPIREAT key timestamp | EXPIREAT 的作用和 EXPIRE 类似,都用于为 key 设置过期时间。 不同在于 EXPIREAT 命令接受的时间参数是 UNIX 时间戳(unix timestamp) | 键为name设置过期时间为2019年1月1日零点:EXPIREAT name 1546272000 |
成功:(integer) 1 失败:(integer) 0 |
| 6 | PEXPIRE key milliseconds | 设置 key 的过期时间以毫秒计 | 键为age设置过期时间为1000毫秒:PEXPIRE age 1000 |
成功:(integer) 1 失败:(integer) 0 |
| 7 | PEXPIREAT key milliseconds-timestamp | 设置 key 过期时间的时间戳(unix timestamp) 以毫秒计 | 键为sex设置过期时间为2019年1月1日零点:EXPIREAT sex 1546272000000 |
成功:(integer) 1 失败:(integer) 0 |
| 8 | KEYS pattern | 查找所有符合给定模式( pattern)的 key | 键为a打头的:KEYS a* | 1) "apples" 2) "age" |
| 9 | MOVE key db | 将当前数据库的 key 移动到给定的数据库 db 当中 | 键为age移到数据库3中:move age 3 |
成功:(integer) 1 失败:(integer) 0 |
| 10 | PERSIST key | 移除 key 的过期时间,key 将持久保持 | 移除键为sex过期时间:PERSIST sex |
成功:(integer) 1 失败:(integer) 0 |
| 11 | PTTL key | 以毫秒为单位返回 key 的剩余的过期时间 | 键为apples的过期时间:PTTL apples | (integer) 10996644158 |
| 12 | TTL key | 以秒为单位,返回给定 key 的剩余生存时间(TTL, time to live) | 键为apples的过期时间:TTL apples | (integer) 10996577 |
| 13 | RANDOMKEY | 从当前数据库中随机返回一个 key | RANDOMKEY | "cats" |
| 14 | RENAME key newkey | 修改 key 的名称 | 键为cats改为cat:RENAME cats cat | OK |
| 15 | RENAMENX key newkey | 仅当 newkey 不存在时,将 key 改名为 newkey | 键为cat改为apples:RENAMENX cat apples |
成功:(integer) 1 失败:(integer) 0 |
| 16 | TYPE key | 返回 key 所储存的值的类型 | 键为name值得类型:type name |
字符:string 哈希:hash 列表:list 集合:set 有序集合:zset |
| 17 | OBJECT [REFCOUNT|IDLETIME| ENCODING][arguments [arguments]] | OBJECT REFCOUNT <key> 返回给定 key 引用所储存的值的次数。此命令主要用于除错。 OBJECT ENCODING <key> 返回给定 key 锁储存的值所使用的内部表示(representation)。 OBJECT IDLETIME <key> 返回给定 key 自储存以来的空闲时间(idle, 没有被读取也没有被写入),以秒为单位。 |
查看键为signtime的引用次数:OBJECT REFCOUNT signtime; 空闲时间:OBJECT IDLETIME apples; 编码方式:OBJECT ENCODING apples |
(integer) 1; (integer) 13; "int" |
| 18 | RESTORE key ttl serialized-value [REPLACE] |
反序列化给定的序列化值,并将它和给定的 key 关联。 |
RESTORE greetingcp 0 "\x00\x15hello, dumping world!\b\x00j`\xde\xbd\x84>wu" |
OK; get greetingcp |
| 19 | SORT key [BY pattern] [LIMIT offset count] [GET pattern [GET pattern ...]] [ASC | DESC] [ALPHA] [STORE destination] |
返回或保存给定列表、集合、有序集合 key 中经过排序的元素。 |
键为score的值倒序排序并存到sorted-numbers中:sort scores desc STORE sorted-numbers |
(integer) 2 |
| 20 | SCAN cursor [MATCH pattern] [COUNT count] | SCAN 命令及其相关的 SSCAN 命令、 HSCAN 命令和 ZSCAN 命令都用于增量地迭代,直到命令返回游标 0,我们称这个过程为一次完整遍历 |
开始新的迭代,匹配*i*,返回两个: scan 0 match *i* count 2 |
1) "12" 2) 1) "greeting" |
序号为17命令实例(get操作后明显看到空闲时长小很多!)
127.0.0.1:6379[1]> OBJECT idletime apples
(integer) 1229
127.0.0.1:6379[1]> get apples
"7"
127.0.0.1:6379[1]> OBJECT idletime apples
(integer) 7
127.0.0.1:6379[1]> OBJECT idletime apples
(integer) 13
序号为18命令实例
127.0.0.1:6379[1]> SET greeting "hello, dumping world!"
OK
127.0.0.1:6379[1]> DUMP greeting
"\x00\x15hello, dumping world!\b\x00j`\xde\xbd\x84>wu"127.0.0.1:6379[1]> RESTORE greetingcp 0 "\x00\x15hello, dumping world!\b\x00j`\xde\xbd\x84>wu"
OK
127.0.0.1:6379[1]> get greetingcp
"hello, dumping world!"
网上有很多参考文档,推荐:http://redisdoc.com/ (是 Redis Command Reference 和 Redis Documentation 的中文翻译版,包括Redis 命令的具体使用方法,Redis 的事务、持久化、复制、Sentinel、集群等功能,超详细!)
上一篇:【Redis】Linux下Redis安装与redis-desktop-manager使用
下一篇:【Redis】命令学习笔记——字符串(String)(23个超全字典版)
【Redis】命令学习笔记——键(key)(20个超全字典版)的更多相关文章
- 【Redis】命令学习笔记——列表(list)+集合(set)+有序集合(sorted set)(17+15+20个超全字典版)
本篇基于redis 4.0.11版本,学习列表(list)和集合(set)和有序集合(sorted set)相关命令. 列表按照插入顺序排序,可重复,可以添加一个元素到列表的头部(左边)或者尾部(右边 ...
- 【Redis】命令学习笔记——哈希(hash)(15个超全字典版)
本篇基于redis 4.0.11版本,学习哈希(hash)相关命令. hash 是一个string类型的field和value的映射表,特别适合用于存储对象. 序号 命令 描述 实例 返回 HSET ...
- 【Redis】命令学习笔记——字符串(String)(23个超全字典版)
Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合). 本篇基于redis 4.0.11版本,学习字符串( ...
- 【Redis数据库】命令学习笔记——发布订阅、事务、脚本、连接等命令汇总
本篇基于redis 4.0.11版本,学习发布订阅.事务.脚本.连接的相关命令. Redis 发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息. 序号 ...
- Redis:学习笔记-04
Redis:学习笔记-04 该部分内容,参考了 bilibili 上讲解 Redis 中,观看数最多的课程 Redis最新超详细版教程通俗易懂,来自 UP主 遇见狂神说 10. Redis主从复制 1 ...
- Redis:学习笔记-02
Redis:学习笔记-02 该部分内容,参考了 bilibili 上讲解 Redis 中,观看数最多的课程 Redis最新超详细版教程通俗易懂,来自 UP主 遇见狂神说 4. 事物 Redis 事务本 ...
- Redis:学习笔记-01
Redis:学习笔记-01 该部分内容,参考了 bilibili 上讲解 Redis 中,观看数最多的课程 Redis最新超详细版教程通俗易懂,来自 UP主 遇见狂神说 1. Redis入门 2.1 ...
- mongodb常用命令学习笔记
mongodb常用命令学习笔记 创建数据库 use DATABASE_NAME eg: use users; 如果数据库不存在,则创建数据库,否则切换到指定数据库.要显示刚刚创建的数据库,需要向数据库 ...
- Redis:学习笔记-03
Redis:学习笔记-03 该部分内容,参考了 bilibili 上讲解 Redis 中,观看数最多的课程 Redis最新超详细版教程通俗易懂,来自 UP主 遇见狂神说 7. Redis配置文件 启动 ...
随机推荐
- Android 开发服务类 02_NewsListServlet
Servlet implementation class NewsListServlet package com.wangjialin.server.xml; import java.io.IOExc ...
- ambari 2.6.2 安装 hdp 2.6.5.0 遇到的问题
1.hive-client 无法安装 一直报错(symlink target already exists and it is not a symlink.),hive-client 已经存在且不是 ...
- 使用python遍历文件夹取出特定的字符串
# -*- coding: utf-8 -* import re import os # 需要处理的文件夹路径(绝对路径) path = u"/Users/a140/Downloads/te ...
- Redis笔记(六):Java中使用Redis
Java程序使用Redis 添加依赖包 Maven依赖方式 <dependency> <groupId>redis.clients</groupId> <ar ...
- WPF Style和Template
WPF中的Style类似于Web应用程序中的CSS,它是控件的一个属性,属于资源的一种. ControlTemplate和DataTemplate区别: ControlTemplate用于改变控件原来 ...
- ASP.NET Core 中的实时框架 SingalR
目录 SignalR 是什么? 在 ASP.NET Core 中使用 SignalR 权限验证 横向扩展 源代码 参考 SignalR 是什么? ASP.NET Core SignalR 是一个开源的 ...
- 使用update_attribute和validation
在使用update_attribute方法时,不走validation 走validation的方法: create create! save save! update update_attribut ...
- mongodb int型id 自增
mongo的c#客户端提供了接口IIdGenerator,有guid和objectid等几种实现,但没有int型id的实现 接口主要2个方法,一个IsEmpty返回bool,判断当前id值是否是空(估 ...
- 线程9--NSOperation
一.NSOperation简介 1.简单说明 NSOperation的作⽤:配合使用NSOperation和NSOperationQueue也能实现多线程编程 NSOperation和NSOpe ...
- Storm框架:如何消费RabbitMq消息(代码案例)
1.定义拓扑topology public class MessageTopology { public static void main(String[] args) throws Exceptio ...