场景
Windows中的Redis存储的某命名空间下的Redis的键值对,都是以指定前缀开头的,比如
比如这里想要将mine:这个前缀开头的都删除掉。
除了使用Redis的可视化工具连接到Redis服务端找到这个命令空间,然后整个删除掉。
如果此时这个命名空间下数据量已经非常大,比如800万条数据,直接使用Redis的可视化工具已经没法
打开,甚至加载不出来删除的按钮。可以通过redis的客户端执行命令进行删除掉。
注:
博客:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。
实现
新建一个文本文档,内容如下
@echo off
set keysfile=redis-cached-keys.txt
redis-cli -n 0 -a 123456 keys "mine:*" > %keysfile%
FOR /F %%i in (%keysfile%) DO (redis-cli -n 0 -a 123456 del %%i)
DEL /F /Q %keysfile%
pause
注意这里的
-n 代表要操作的数据为0号数据, -a 代表是连接密码
然后将此文件的后缀名改为bat,并将其复制到Redis的解压目录下,即redis.cli所在的目录下
然后这个bat命令是使用redis-cli连接到redis的server端,然后先在本地新建一个文本文件,
再读取以mine:开头的key然后,将结果保存到文件中,再进行循环执行删除每个建,
然后将文件删除。
实现效果
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/136339.html