Redis批量删除的方法

Redis批量删除需要借助linux的xargs命令:

redis-cli -h 127.0.0.1 -p 6379 keys test* | xargs -r -t -n1 ./redis-cli -h 127.0.0.1 -p 6379 del #首先查出所有test开头的key,然后批量删除
如果加了安全验证需要添加参数:
redis-cli -h 127.0.0.1 -p 6379 -a xxx keys test* | xargs -r -t -n1 ./redis-cli -h 127.0.0.1 -p 6379 -a xxx del #首先查出所有test开头的key,然后批量删除
   补充1:xargs命令后需加上参数-r,不然当keys的数量为0时,就会报错 (error) ERR wrong number of arguments for ‘del’ command
     补充2:xargs命令后需加上参数-n1,不然当集群情况keys的数量大于1时,可能会报错 (error) CROSSSLOT Keys in request don’t hash to the same slot
     补充3:不加-t也可以,加上-t会输出每次删除的内容,不加则不输出删除的内容,但还是会输出每次删除的key的数量
posted @ 2020-04-02 00:45  原万里  阅读(7803)  评论(0编辑  收藏  举报