批量删除Redis数据库中的Key

批量删除Key
Redis 中有删除单个 Key 的指令 DEL,但好像没有批量删除 Key 的指令,不过咱们能够借助 Linux 的 xargs 指令来完成这个动做html

redis-cli keys "*" | xargs redis-cli del  
//若是redis-cli没有设置成系统变量,须要指定redis-cli的完整路径  
//如:/opt/redis/redis-cli keys "*" | xargs /opt/redis/redis-cli del  

若是要指定 Redis 数据库访问端口,使用下面的命令redis

redis-cli -p 6380 keys "*" | xargs redis-cli -p 6380 del  
//端口号换成本身的

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

redis-cli -a password keys "*" | xargs redis-cli -a password del
//密码换成本身的

若是要访问 Redis 中特定的数据库,使用下面的命令spa

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

上面命令能够一块儿使用,如code

//删除机器上reids端口6380以"PRO_"开头的全部key,redis密码为password
redis-cli -p 6380 -a password keys "PRO_*" | xargs redis-cli -p 6380 -a password del 

删除全部Key
删除全部Key,能够使用Redis的flushdb和flushall命令htm

//删除当前数据库中的全部Key  
flushdb  
//删除全部数据库中的key  
flushall  

 

其余blog

1.若是key包含空格像:
a log message       message1
vip user          peter
vip user            mark
vip user          mary
能够经过加引号来删除
DEL "a log message"
DEL " vip user " 
不过不推荐在key中使用空格,最好使用冒号来分割字段ip

例如vip:user:mary
一些文档使用下划线,按理驼峰应该也能够了

2.
另外 redis 的 DEL是能够批量删除的,使用空格隔开
DEL key1 key2
会返回成功删除的个数
(integer) 2
对于有空格的key须要用引号包含起来
DEL ”vip user mark" "vip user mary"
(integer) 2文档

 

本文参考:https://www.cnblogs.com/DreamDrive/p/5772198.htmlclass

相关文章
相关标签/搜索