Redis キーの値をdump・restoreする

Redis キーの値をdump・restoreする

Redisで、キーの値をdump・restoreする手順を記述してます。

環境

  • OS Ubuntu 21.10 (Impish Indri)
  • Redis 6.2.6

手順

キーの値をdump・restoreするには、「dump」と「restore」を使用します。

dump キー名

restore キー名 有効期限(ミリ秒) dumpした値

実際に、キーの値をdumpしてからrestoreしてみます。

まずはdumpします。

127.0.0.1:6379> set k1 "aaa"
OK

127.0.0.1:6379> dump k1
"\x00\x03aaa\t\x00\x7f\x8aj\xf9\xe2\xee\xc6."

dumpされた値をrestoreしてみます。
※有効期限を「0」にすると有効期限は設定されません。

127.0.0.1:6379> restore k1-1 0 "\x00\x03aaa\t\x00\x7f\x8aj\xf9\xe2\xee\xc6."
OK

127.0.0.1:6379> get k1-1
"aaa"

restoreされていることが確認できます。

すでに存在しているキーには、restoreできません。

127.0.0.1:6379> restore k2 0 "\x00\x03aaa\t\x00\x7f\x8aj\xf9\xe2\xee\xc6."
(error) BUSYKEY Target key name already exists.

有効期限を設定

有効期限を設定すると、有効期限が切れるとキーの値は「nil」になります。
※「ttl」は有効期限を秒で確認できます。

127.0.0.1:6379> restore k10 10000 "\x00\x03aaa\t\x00\x7f\x8aj\xf9\xe2\xee\xc6."
OK

127.0.0.1:6379> ttl k10
(integer) 3

127.0.0.1:6379> ttl k10
(integer) 1

127.0.0.1:6379> ttl k10
(integer) -2

127.0.0.1:6379> get k10
(nil)