恢复

语法
RESTORE key ttl serialized-value [REPLACE] [ABSTTL]
  [IDLETIME seconds] [FREQ frequency]
从以下位置开始可用:
2.6.0
时间复杂度:
O(1) 创建新键,附加 O(N*M) 重建序列化值,其中 N 是组成该值的 Redis 对象的数量,M 是它们的平均大小。对于较小的字符串值,时间复杂度为 O(1)+O(1*M),其中 M 较小,因此只需 O(1)。但是,对于排序集值,复杂度为 O(N*M*log(N)),因为将值插入到排序集中是 O(log(N))。
ACL 类别:
@keyspace, @write, @slow, @dangerous,

创建与值关联的键,该值是通过反序列化 提供的序列化值(通过DUMP).

如果ttl为 0 时,则创建密钥时没有任何过期时间,否则指定的 expire time (in milliseconds) (过期时间 (以毫秒为单位)) 。

如果ABSTTL修饰符,ttl应表示密钥将过期的绝对 Unix 时间戳(以毫秒为单位)。

出于驱逐目的,您可以使用IDLETIMEFREQ修饰 符。看OBJECT了解更多信息。

RESTORE将返回 “Target key name is busy” 错误key已经 存在,除非您使用REPLACE修饰语。

RESTORE检查 RDB 版本和数据校验和。 如果它们不匹配,则返回错误。

例子

redis> DEL mykey
0
redis> 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
redis> TYPE mykey
list
redis> LRANGE mykey 0 -1
1) "1"
2) "2"
3) "3"

RESP2/RESP3 回复

简单的字符串回复OK.

历史

  • 从 Redis 版本 3.0.0 开始:添加了REPLACE修饰语。
  • 从 Redis 版本 5.0.0 开始:添加了ABSTTL修饰语。
  • 从 Redis 版本 5.0.0 开始:添加了IDLETIMEFREQ选项。
为本页评分
返回顶部 ↑