视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
redis中批量删除key的方法
2020-11-09 06:53:56 责编:小采
文档
 Redis是一个高性能的key-value数据库。redis中可以借助Linux的xargs指令来批量删除key,也可以使用flushdb和flushall命令删除所有key。

批量删除Key

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

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

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

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

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

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

删除所有Key

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

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

其它形式的通过redis的key删除:

如果key包含空格像:

a log message     message1

vip user          peter

vip user         mark

vip user          mary

可以通过加引号来删除

DEL "a log message"
DEL " vip user "

不过不推荐在key中使用空格,最好使用冒号来分割字段

例如vip:user:mary

一些文档使用下划线,按理驼峰应该也可以了

另外 redis 的 DEL是可以批量删除的,使用空格隔开

DEL key1 key2

会返回成功删除的个数

(integer) 2

对于有空格的key需要用引号包含起来

DEL ”vip user mark" "vip user mary"
(integer) 2

更多redis知识请关注redis入门教程栏目。

下载本文
显示全文
专题