- 用法
-
RESTORE key ttl serialized-value [ REPLACE ] [ ABSTTL ] [ IDLETIME 秒 ] [ FREQ 频率 ]
- 复杂度
- 创建新键的复杂度为 O(1),重建序列化值的额外复杂度为 O(N*M),其中 N 是构成值的对象数量,M 是它们的平均大小。对于小型字符串值,时间复杂度因此为 O(1)+O(1*M),其中 M 较小,所以简单地为 O(1)。然而,对于有序集合值,复杂度为 O(N*M*log(N)),因为将值插入有序集合的复杂度为 O(log(N))。
- 自从
- 2.6.0
- ACL 分类
- @keyspace, @dangerous, @write, @slow
创建一个与值关联的键,该值通过反序列化提供的序列化值(通过 DUMP
命令获取)获得。
如果 ttl
为 0,则创建的键永不 expires;否则,将设置指定的过期时间(以毫秒为单位)。
如果使用了 ABSTTL
修饰符,ttl
应表示键将过期时的绝对 Unix 时间戳(以毫秒为单位)。
出于逐出目的,您可以使用 IDLETIME
或 FREQ
修饰符。有关更多信息,请参阅 OBJECT
。
当 key
已存在时,!RESTORE
将返回“Target key name is busy”错误,除非您使用 REPLACE
修饰符。
!RESTORE
会检查 RDB 版本和数据校验和。如果它们不匹配,则会返回错误。
示例
127.0.0.1:6379> DEL mykey
(integer) 0
127.0.0.1:6379> RESTORE mykey 0 "\n\x17\x17\x00\x00\x00\x12\x00\x00\x00\x03\x00\
x00\xc0\x01\x00\x04\xc0\x02\x00\x04\xc0\x03\x00\
xff\x04\x00u#<\xc0;.\xe9\xdd"
OK
127.0.0.1:6379> TYPE mykey
list
127.0.0.1:6379> LRANGE mykey 0 -1
1) "1"
2) "2"
3) "3"
RESP2/RESP3 回复
简单字符串回复:OK
。
历史
版本 | 变更 |
---|---|
3.0.0 | 添加了 |
5.0.0 | 添加了 |
5.0.0 | 添加了 |