redis批量删除key

Redis批量删除key

 用linux的xargs命令,把前一个命令的结果当作后一个命令的参数,比如要删除redis中所有doctor_开头的key,我们可以这么写     注意:要在linux终端中输入,不是在redis客户端中输入

 

[plain]  view plain copy 在CODE上查看代码片 派生到我的代码片
 
  1. redis-cli KEYS "doctor_*" | xargs redis-cli DEL  


  2.  

批量删除Key

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

1
2
3
redis-cli keys "*" | 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 含空格,就匹配不到了,暂时还没发现好的解决办法。

猜你喜欢

转载自825635381.iteye.com/blog/2115650