1.redis 命令dump 

DUMP
返回存储在指定key处的值的序列化版本

语法
DUMP key
可用版本:

2.6.0
时间复杂度:
O(1) 
来访问键和额外的 O(N M) 来序列化它,其中 N 是组成值的 Redis 对象的数量,
M 是它们的平均大小。对于小字符串值,时间复杂度因此为 O(1)+O(1 M),其中 M 很小,因此只需 O(1)。

ACL 类别:
@keyspace, @read, @slow

以Redis特定的格式序列化存储在key处的值,并将其返回给用户。可以使用 RESTORE 将返回的值合成回Redis键命令。 
序列化格式不透明且不标准,但它具有一些语义特征:
它包含一个64位校验和,用于确保检测到错误。RESTORE命令确保在使用序列化值合成key之前检查校验和。
值的编码格式与RDB使用的格式相同。
RDB版本编码在序列化值中,因此具有不兼容RDB格式的不同Redis版本将拒绝处理序列化值。
序列化的值不包含过期信息。为了获取当前值的生存时间,PTTL应该使用命令。

如果key不存在,则返回nil批量回复。

#返回
批量字符串:序列化值。

#例子
redis> SET mykey 10
"OK"
redis> DUMP mykey
(error) 'utf-8' codec can''t decode byte 0xc0 in position 1: invalid start byte
redis> 

192.168.1.1:6400> dump name4
"\x00\x04xsq4\t\x00\xc6]\xf5\xb6\xbc\x18\x0f\x97"
192.168.1.1:6400> del name4
(integer) 1
192.168.1.1:6400> restore name4  0  "\x00\x04xsq4\t\x00\xc6]\xf5\xb6\xbc\x18\x0f\x97"   #将序列话的值恢复到name4 
OK
192.168.1.1:6400> get name4
"xsq4"
192.168.1.1:6400> set name5 sajfdsjfa;ljdsflajsdl;fjas;dljfl;asdjfl;sadjd;fjdasfjlasd;jf;sj;w8094809
OK
192.168.1.1:6400> get name5
"sajfdsjfa;ljdsflajsdl;fjas;dljfl;asdjfl;sadjd;fjdasfjlasd;jf;sj;w8094809"
192.168.1.1:6400> dump name5
"\x00@Hsajfdsjfa;ljdsflajsdl;fjas;dljfl;asdjfl;sadjd;fjdasfjlasd;jf;sj;w8094809\t\x00\xcf\x10\xaa\x06\xec\xecB\x18"
192.168.1.1:6400> restore name5 0 "\x00@Hsajfdsjfa;ljdsflajsdl;fjas;dljfl;asdjfl;sadjd;fjdasfjlasd;jf;sj;w8094809\t\x00\xcf\x10\xaa\x06\xec\xecB\x18" replace
OK

更多推荐