Linux中根据key模糊删除redis集群中的数据

场景:将用户和商户的支付宝和微信当日限额的额度累加放到redis中,时间当日失效,因为测试要删除所有的当日限额的数据

1.查看redis的安装目录

ps -ef|grep redis

2.进入redis-server的目录下,如图,执行下面的命令

cd /data/web/redis/src
ls

3.执行完会发现有redis-cli和redis-server,此时创建redis_del.sh脚本文件

touch redis_del.sh

4.编辑redis_del.sh文件

vim redis_del.sh

5.按i进入编辑模式,根据自己redis填写信息,我的脚本如下(对应你的改下值就可以了):

#!/bin/sh
redis_common=/data/web/redis/src/redis-cli
redis_server=20.200.54.230
cluster_port01=7001
cluster_port02=7002
cluster_port03=7003
cluster_port04=7004
cluster_port05=7005
cluster_port06=7006


$redis_common -c -h $redis_server -p $cluster_port01 keys $1 | xargs -i ./redis-cli -h $redis_server -p $cluster_port01 del {}
$redis_common -c -h $redis_server -p $cluster_port02 keys $1 | xargs -i ./redis-cli -h $redis_server -p $cluster_port02 del {}
$redis_common -c -h $redis_server -p $cluster_port03 keys $1 | xargs -i ./redis-cli -h $redis_server -p $cluster_port03 del {}
$redis_common -c -h $redis_server -p $cluster_port04 keys $1 | xargs -i ./redis-cli -h $redis_server -p $cluster_port04 del {}
$redis_common -c -h $redis_server -p $cluster_port05 keys $1 | xargs -i ./redis-cli -h $redis_server -p $cluster_port05 del {}
$redis_common -c -h $redis_server -p $cluster_port06 keys $1 | xargs -i ./redis-cli -h $redis_server -p $cluster_port06 del {}

6.esc退出编辑模式,按shift+z+z保存或者:wq!保存,然后解释一下内容吧

#!/bin/sh    这是放在第一行必须有的,#!/bin/bash也可以

redis_common:redis-cli的路径,可以用pwd命令查看路径,但是最后放上redis-cli

redis_server:服务器的ip

cluster_port01——cluster_port06:redis集群的6个端口,我的是7001——7006

-c:启动集群模式,进入集群服务

-h:后面加服务器主机的ip

-p:后边加对应-h服务器主机的端口号

$1:相当于你对应要删除key的一个占位符

xargs -i: -i 选项告诉 xargs 可以使用{}代替传递过来的参数

del:就是删除的命令啦

7.例子:想要删除以user.max.alipay为首的key,可以执行下面的命令

./redis_del.sh user.max.alipay*

8.有对应的key就会显示

(integer)1

 

9.以上希望可以帮到很多人,如果有问题希望帮我指出,万分感谢!!!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值