原文:https://blog.51cto.com/BADAOLIUMANGQZ/6058728
场景
需求是查看某一个服务器上的redis的某命名空间(指定前缀开头)的所有键值对的
key和value的数据格式,但是这个服务器上没法连接外网,只能在redis服务端所在
目录下通过bat脚本获取所有的并输出到txt文件中复制出来查看。
当然也可以通过redis数据的导入导出来实现,但是对redis两个的版本以及过期时间等限制
比较多。
比如这里要获取sys_dict命名空间下,即所有以sys_dict:开头的键值对的值。
实现
这里的服务器操作系统为Windows,找到redis的安装目录下,即redis-cli所在的目录下,新建bat文件
脚本的内容如下
@echo off
set keysfile=redis-cached-keys.txt
set valuesfile=redis-cached-values.txt
redis-cli -n 4 -a bdyh keys "*" > %keysfile%
FOR /F %%i in (%keysfile%) DO (redis-cli -n 4 -a bdyh get %%i >>%valuesfile% )
pause
注意这里的-n代表0号数据库,-a后面跟的是密码,然后keys后面的代表查询所有
sys_dict:开头的key并循环根据key去取值并追加到文件中。
双击bat文件
会在目录下生成两个文件,一个是存放所有的key
一个是存放所有的value
-----------------------------------
©著作权归作者所有:来自51CTO博客作者霸道流氓的原创作品,请联系作者获取转载授权,否则将追究法律责任
Redis中通过bat获取指定前缀开头的所有键值对并输出保存到文件中
https://blog.51cto.com/BADAOLIUMANGQZ/6058728