使用Linux管道批量删除Redis的key


Redis并没有提供批量删除记录的方法,这有时候很不方便,特别是重新初始化数据的时候。一般有两种做法:

如果业务场景明确,可以通过DBID进行区分,Redis默认的DBID是0,默认的配置文件是有16个DB,可以在应用中通过select方法指定数据库的ID进行存取。然后通过FlushDB命令能清空某个ID的数据库,达到重新初始化的目的。

如果某个ID的数据库已经有很多类型的记录了,无法整个库清空,那么就需要批量的删除key值,这时可以采用Linux管道,比如我要删除DBID为1的test开头的key值:

[root@banping redis]# /banping/redis/src/redis-cli -n 1 keys “test*” | xargs /banping/redis/src/redis-cli -n 1 del
(integer) 5095

把keys的输出作为del的输入,这样就批量删除了。

附redis-cli 命令:

redis-cli 2.4.2

Usage: redis-cli [OPTIONS] [cmd [arg [arg ...]]]
-h Server hostname (default: 127.0.0.1)
-p Server port (default: 6379)
-s Server socket (overrides hostname and port)
-a Password to use when connecting to the server
-r Execute specified command N times
-i When -r is used, waits seconds per command.
It is possible to specify sub-second times like -i 0.1.
-n Database number
-x Read last argument from STDIN
-d Multi-bulk delimiter in for raw formatting (default: \n)
–raw Use raw formatting for replies (default when STDOUT is not a tty)
–latency Enter a special mode continuously sampling latency.
–help Output this help and exit
–version Output version and exit

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值