【Redis】命令学习笔记——键(key)(20个超全字典版)

安装完redis和redis-desktop-manager后,开始学习命令啦!本章从对键(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 关联。
参数 ttl 以毫秒为单位为 key 设置生存时间;如果 ttl 为 0 ,那么不设置生存时间。

RESTORE greetingcp 0 "\x00\x15hello, dumping world!\b\x00j`\xde\xbd\x84>wu"

OK;

get greetingcp
"hello, dumping world!"

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!"

下一篇开始学习Redis数据类型的相关命令!

网上有很多参考文档,推荐:http://redisdoc.com/ (是 Redis Command Reference 和 Redis Documentation 的中文翻译版,包括Redis 命令的具体使用方法,Redis 的事务、持久化、复制、Sentinel、集群等功能,超详细!)

上一篇Redis安装博文:【Redis】Linux下Redis安装与redis-desktop-manager使用

猜你喜欢

转载自blog.csdn.net/sinat_35630008/article/details/82081463
今日推荐