清理redis集群所有数据库 flushall-cluster脚本

清理redis集群所有数据库 flushall-cluster脚本,第1张

在实际使用环境中,有时候我们需要清空所有redis集群的数据进行测试,这是使用这个脚本就开始发挥作用了。希望能帮到所需要的人

cat /tmp/flushall-cluster.sh

脚本怎么使用

sh flushall-cluster.sh 主机地址 端口

参考:

flushall-cluster.sh

1 使用cli

FLUSHDB 清除一个数据库,FLUSHALL清除整个redis数据。

2 使用shell

redis-cli keys "*" | while read LINE do TTL=`redis-cli ttl $LINE`if [ $TTL -eq -1 ]then echo "Del $LINE"RES=`redis-cli del $LINE`fidone

删除 3600秒之后过期的

redis-cli keys "*" | while read LINE do TTL=`redis-cli ttl $LINE`if [ $TTL -ge 3600 ]then echo "Del $LINE"RES=`redis-cli del $LINE`fidone

删除某些前缀的

redis-cli KEYS "126.com*" | xargs redis-cli DEL

3 使用lua脚本

删除所有keyEVAL "return redis.call('del', unpack(redis.call('keys', ARGV[1])))" 0 *

删除某些key

EVAL "return redis.call('del', unpack(redis.call('keys', ARGV[1])))" 0 126.com*


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10828309.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-11
下一篇 2023-05-11

发表评论

登录后才能评论

评论列表(0条)

保存