【Redis】RedisCluster 批量删除key

  1. 首先使用客户端redis-cli连接你的RedisCluster其中任何一个节点

    redis-cli -h host -p post -a password
  2. 查看集群信息,找出所有的master节点, 命令如下

    cluster nodes
  3. 修改如下shell脚本(redis_delete_key.sh),redis_list为集群主节点,password是你的集群密码

    redis_list=("host:post" "host:post")
    password="redispassword=="
    
    for info in ${redis_list[@]}
        do
            echo "开始执行:$info"  
            ip=`echo $info | cut -d : -f 1`
            port=`echo $info | cut -d : -f 2`
            cat key.txt |xargs -t -n1 redis-cli -h $ip -p $port -a $password -c del
        done
        echo "完成"
  4. 找出所有要删除的key,输出到文本key.txt里(这里找的是所有baidu_前缀的key)

    redis-cli -h 10.16.1.1 -p 6389 keys "baidu_*" >> key.txt
  5. 执行脚本,开始批量删除,当key比较多的时候,耗时较长

    sh redis_delete_key.sh

你可能感兴趣的:(NoSQL,shell脚本,Redis)