|
作者:nosqlfan on 星期天, 一月 8, 2012 · 评论本文 【阅读:2,246 次】
<iframe id="I1_1376895554093" style="margin: 0px; padding: 0px; border-style: none; position: static; left: 0px; top: 0px; visibility: visible; width: 70px; height: 15px;" title="+1" name="I1_1376895554093" src="https://apis.google.com/u/0/_/+1/fastbutton?bsv=o&usegapi=1&size=small&hl=en-US&origin=http%3A%2F%2Fblog.nosqlfan.com&url=http%3A%2F%2Fblog.nosqlfan.com%2Fhtml%2F3632.html&gsrc=3p&jsh=m%3B%2F_%2Fscs%2Fapps-static%2F_%2Fjs%2Fk%3Doz.gapi.zh_CN.EZwEM7nmXNU.O%2Fm%3D__features__%2Fam%3DEQ%2Frt%3Dj%2Fd%3D1%2Frs%3DAItRSTOc2XMLudphj4n-qzbHFXGZvhcKwg#_methods=onPlusOne%2C_ready%2C_close%2C_open%2C_resizeMe%2C_renderstart%2Concircled&id=I1_1376895554093&parent=http%3A%2F%2Fblog.nosqlfan.com&pfname=&rpctoken=21624380" frameborder="0" marginwidth="0" marginheight="0" scrolling="no" width="100%" data-gapiattached="true"></iframe>
Redis-Dump是一个将Redis数据导入/导出为json格式数据的小工具,目前还在Alpha版本,目前提供两个命令,将Redis数据层出成json的redis-dump命令,以及将json文件导入到redis中的redis-load命令,喜欢尝鲜的同学可以试玩一下。
另外个人认为这也是一个适合新手的Redis数据结构学习工具,通过将Redis几种数据结构dump成json,可以让我们更直观的认识Redis数据结构及其操作。
下面是使用简介:
$ redis-dump
$ redis-dump -u 127.0.0.1:6371 > db_full.json
$ redis-dump -u 127.0.0.1:6371 -d 15 > db_db15.json
$ < db_full.json redis-load
$ < db_db15.json redis-load -d 15
# OR
$ cat db_full | redis-load
$ cat db_db15.json | redis-load -d 15
# You can specify the redis URI via an environment variable
$ export REDIS_URI=127.0.0.1:6371
$ redis-dump
层出的json数据格式如下,包括了db,key,ttl,数据的type,以及相应的数据
{"db":0,"key":"hashkey","ttl":-1,"type":"hash","value":{"field_a":"value_a","field_b":"value_b","field_c":"value_c"},"size":42}
{"db":0,"key":"listkey","ttl":-1,"type":"list","value":["value_0","value_1","value_2","value_0","value_1","value_2"],"size":42}
{"db":0,"key":"setkey","ttl":-1,"type":"set","value":["value_2","value_0","value_1","value_3"],"size":28}
{"db":0,"key":"zsetkey","ttl":-1,"type":"zset","value":[["value_0","100"],["value_1","100"],["value_2","200"],["value_3","300"],["value_4","400"]],"size":50}
{"db":0,"key":"stringkey","ttl":79,"type":"string","value":"stringvalue","size":11}
而实际上Redis作者也在昨天开启了一个关于将Redis数据转换成json或csv的讨论(issues-288)。目前正广泛收集需求中。
项目地址:github.com
环境和操作:
1、本地建立redis-server,然后redis-cli set mykey abcde、redis-cli get mykey返回‘abcde’,结果是正常的。
2、从https://github.com/delano/redis-dump下载zip的redis-dump,放入ubuntu 11的home下,terminal下,
~/delano-redis-dump/bin$chmod +x redis-dump
然后:
~/delano-redis-dump/bin$ ./redis-dump -u 127.0.0.1:6371 > dbfull.json
返回提示:
bash: ./redis-dump: /usr/bin/ruby: bad interpreter: No such file or directory
~/delano-redis-dump/bin$ ./redis-dump -u 127.0.0.1:6371 -d 15 > dbfull15.json
提示:
bash: ./redis-dump: /usr/bin/ruby: bad interpreter: No such file or directory
~/delano-redis-dump/bin$
请教错误原因,谢谢!! |
|