首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在redis中转储和恢复特定密钥的数据

在redis中转储和恢复特定密钥的数据
EN

Stack Overflow用户
提问于 2014-02-18 15:14:23
回答 3查看 21.4K关注 0票数 14

我想备份我的redis中的一个特定密钥,它有多个密钥。我的redis有很多密钥,我不想完全备份我的redis数据。我一直在通过http://redis.io/commands。在那里,我发现有一个命令dump,我可以通过它获得特定密钥的转储,如下所示:

代码语言:javascript
复制
 redis> dump "myKey"

但只在redis控制台中提供十六进制格式的输出。是否可以将特定密钥的数据存储在文件中,然后将其导入到该密钥中?

EN

回答 3

Stack Overflow用户

发布于 2014-05-03 09:38:48

如果您试图从命令行转储/恢复密钥(当我发现这个问题时,这是我需要做的),Redis有一些不明显的怪癖。有关更详细的解释,请参阅this answer

简短的答案是转储/恢复,如下所示:

代码语言:javascript
复制
bwood@mybox:~$ redis-cli --raw dump mykey | head -c-1 > myfile
bwood@mybox:~$ cat myfile | redis-cli -x restore mynewkey 0
票数 32
EN

Stack Overflow用户

发布于 2015-06-24 03:23:13

跟进这篇文章:

代码语言:javascript
复制
bwood@mybox:~$ redis-cli --raw dump mykey | head -c-1 > myfile
bwood@mybox:~$ cat myfile | redis-cli -x restore mynewkey 0

如果这对你不起作用,你会得到这样的错误: head:非法字节计数-1

然后修改不带head命令的dump命令:

redis-cli --raw dump mykey > myfile

现在,在mac或textpad上用sublime打开转储文件,删除最后两个字符并保存,然后进行恢复。

这是我的最后两行:

代码语言:javascript
复制
 0561 7074 7572 6520 fa00 5be0 0526 015d
 7d06 00a7 afed c100 323d 400a 

我删除了"0a“并保存,恢复工作正常,例如

代码语言:javascript
复制
0561 7074 7572 6520 fa00 5be0 0526 015d
7d06 00a7 afed c100 323d 40
票数 5
EN

Stack Overflow用户

发布于 2014-02-18 15:40:57

编写一个脚本,将DUMP所需的密钥,将输出保存到文件,然后您可以读取这些文件,并将其内容推送到RESTORE命令。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21846672

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档