博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
redis批量删除key
阅读量:5943 次
发布时间:2019-06-19

本文共 983 字,大约阅读时间需要 3 分钟。

 

批量删除Key

Redis 中有删除单个 Key 的指令 DEL,但好像没有批量删除 Key 的指令,不过我们可以借助 Linux 的 xargs 指令来完成这个动作

1
2
3
redis-cli keys
"test*"
| xargs redis-cli del
//如果redis-cli没有设置成系统变量,需要指定redis-cli的完整路径
//如:/opt/redis/redis-cli keys "*" | xargs /opt/redis/redis-cli del

如果要指定 Redis 数据库访问密码,使用下面的命令

1
redis-cli -a password keys
"*"
| xargs redis-cli -a password del

如果要访问 Redis 中特定的数据库,使用下面的命令

1
2
//下面的命令指定数据序号为0,即默认数据库
redis-cli -n 0 keys
"*"
| xargs redis-cli -n 0 del

删除所有Key

删除所有Key,可以使用Redis的flushdb和flushall命令

1
2
3
4
//删除当前数据库中的所有Key
flushdb
//删除所有数据库中的key
flushall

注:keys 指令可以进行模糊匹配,但如果 Key 含空格,就匹配不到了,暂时还没发现好的解决办法。

 

在数据量大的时候,可以先导出再删除

redis-cli -p 6380 -a redis-pwd keys "preffix-1*" > /home/keys_redis/preffix-1

然后通过这些数据删掉生产环境上的key。

1
cat /home/keys_redis/preffix-1 | xargs redis-cli -a redis-pwd -n 0 del

删除的速度非常快

 

the_day_before_yesterday=`date -d "2 days ago" '+%Y%m%d'`var_keys="RealTimelog*"${the_day_before_yesterday}"*"echo $var_keysredis-cli -a 1234 keys $var_keys | xargs redis-cli -a 1234 del

 

转载地址:http://skwxx.baihongyu.com/

你可能感兴趣的文章
一个list<Map>里map其中的一个字段的值相同,如何判断这个字段相同,就把这个map的其他字段存入另一个map中...
查看>>
测试计划
查看>>
linux下crontab实现定时服务详解
查看>>
返回顶部JS
查看>>
iOS9 HTTP 不能正常使用的解决办法
查看>>
Numpy中的random模块中的seed方法的作用
查看>>
史上最全的数据库面试题,不看绝对后悔
查看>>
Chrome百度不显示中文字体
查看>>
用java数组模拟登录和注册功能
查看>>
javaScript实现归并排序
查看>>
关于jsb中js与c++的相互调用
查看>>
GraphQL 01--- GraphQL 介绍及资源总结
查看>>
nginx配置访问密码,让用户输入用户名密码才能访问
查看>>
串结构练习——字符串匹配
查看>>
CF Round #426 (Div. 2) The Useless Toy 思维 水题
查看>>
UVA 122 Trees on the level 二叉树 广搜
查看>>
POJ-2251 Dungeon Master
查看>>
tortoisesvn的安装
查看>>
大S变"汪太"!与汪小菲注册结婚
查看>>
我是怎么使用最短路径算法解决动态联动问题的
查看>>