redis cluster集群批量删除中的key
1、说明
redis cluster集群上有时候会需要删除多个key,就必须需要登录到每个节点上,而且有可能这个key不在这个节点,删除起来就比较麻烦,测试的时候极不方便。于是就自己动手写了一个支持模糊删除key的脚本,分享给大家。
2、新建del_redis.sh,内容如下
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
#!/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:参数说明
|
1
2
3
4
5
6
|
-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、执行脚本
|
1
|
sh del_redis.sh test:* |
这样就删除了所有以test开头的key了

浙公网安备 33010602011771号