1、说明
redis cluster集群上有时候会需要删除多个key,就必须需要登录到每个节点上,而且有可能这个key不在这个节点,删除起来就比较麻烦,测试的时候极不方便。于是就自己动手写了一个支持模糊删除key的脚本,分享给大家。
2、新建del_redis.sh,内容如下
#!/bin/bash # 配置redis-cli地址 redis_cmd=redis-cli # 配置reids集群IP地址 host=192.168.1.2 # 配置reids集群节点端口 ports=(6380 6381 6382 6383 6384 6385) # 配置reids密码 password="test" for port in ${ports[@]} do $redis_cmd -c -h $host -p $port -a $password 2>/dev/null keys $1 | xargs -i $redis_cmd -h $host -p $port -a $password 2>/dev/null del {} done; echo "success"
ps:参数说明
-c # 启动集群模式进入redis集群服务 -h # redis主机地址 -p # redis节点的端口 -a # redis的密码 2>/dev/null # 过滤使用密码连接redis时报的警告:Warning: Using a password with ‘-a‘ or ‘-u‘ option on the command line interface may not be safe. xargs -i # -i 选项告诉 xargs 可以使用{}代替传递过来的参数
3、执行脚本
sh del_redis.sh test:*
这样就删除了所有以test开头的key了
原文地址:https://www.cnblogs.com/feng0520/p/11067025.html
时间: 2024-11-29 05:56:34