#!/bin/bash

redis_list=("192.168.252.174:7000" "192.168.252.174:7001" "192.168.252.174:7002" "192.168.252.176:7003" "192.168.252.176:7004" "192.168.252.176:7005")

pkey_list=("CAS_TICKET*")

for info in ${redis_list[@]}
do
echo "开始执行:$info"
ip=`echo $info | cut -d \: -f 1`
port=`echo $info | cut -d \: -f 2` for pkey in ${pkey_list[@]}
do
redis-cli -c -h $ip -p $port -a "abc" keys $pkey | xargs -r -t -n1 redis-cli -c -h $ip -p $port -a "abc" del
done
done
echo "完成"

执行一会提示,'Redis:Cannot assign requested address'

客户端频繁连接Redis服务端,由于每次连接都在很短时间内结束,导致服务器出现大量time-wait。以至于用光了可用的端口号。

所以需要自动释放 time-wait

net.ipv4.ip_local_port_range = 9000 6553
net.ipv4.tcp_max_tw_buckets = 10000
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_fin_timeout = 10

一个小插曲

集群修改了密码,需要同步修改项目里面的Redis集群密码。修改以后一直报

Caused by: redis.clients.jedis.exceptions.JedisDataException: ERR Client sent AUTH, but no password is set

由于密码里面有特殊字符,以为是转义了。

用双引号、单引号、转义符都没用。

后来去检查Redis集群。才发现只有一个节点设置了密码,其他节点都没设置。

赶紧补上密码,重启项目,问题解决。

redis 批量删除 keys的更多相关文章

  1. redis 批量删除keys

    “mf*” 为你的key  redis-cli -h 127.0.0.1 -p 6379 -a yourpassword keys “mf*” |xargs  redis-cli -h 127.0.0 ...

  2. redis 批量删除操作

    redis 批量删除操作 需要在redis里面清空一批数据,redis没有支持通配符删除, 只有del key1 key2 ... 但是可以通配符获取 KEYS PATTERN 然后利用linux管道 ...

  3. redis批量删除多个keys

    Redis的官网redis.io,大家可以查看很多命令的使用方法 说明:删除单个key比较简单,直接使用命令del xxxkey,批量删除多个keys可利用如下命令: 假设:redis的安装目录如下: ...

  4. Redis批量删除KEY的方法

    Redis 中有删除单个 Key 的指令 DEL,但好像没有批量删除 Key 的指令,不过我们可以借助 Linux 的 xargs 指令来完成这个动作. 代码如下: redis-cli keys “* ...

  5. redis批量删除key 远程批量删除key

    一.遇到的问题 在开发的过程中,经常会遇到要批量删除某种规则的key,如缓存的课程数据“course-课程uid”,其中课程uid是变量,我们需要删除"course-*"这一类的数 ...

  6. redis批量删除脚本

    服务器上安装了redis客户端,通过客户端利用脚本对数据批量删除,脚本内容如下: #!/bin/bash name="$1" echo $name ./redis-cli -h r ...

  7. Redis 批量删除Redis的key 正则匹配删除

    del 删除单个key方便 要是删除多个就不是很方便了 这时候可以使用xsrsg来批量删除 1.退出redis 2.匹配CCPAI:开头的所有key*删除 redis-cli -a 密码 -h hos ...

  8. Redis批量删除key的小技巧,你知道吗?

    在使用redis的过程中,经常会遇到要批量删除某种规则的key,但是redis提供了批量查询一类key的命令keys或scan,没有提供批量删除某种规则key的命令,怎么办?看完本文即可,哈哈. 本文 ...

  9. Redis批量删除缓存数据

    背景: 在使用redis中,经常会遇到批量删除缓存的情况,但是对于在客户端中,如果一个一个的删除key,则需要较长时间及相对麻烦,可以使用以下命令,批量删除缓存. 本地批量删除KEY: ./redis ...

随机推荐

  1. DAY5:字典

    无序性: # -*- coding:utf-8 -*- # Author: TanJincheng room = { "s2": "han meimei", & ...

  2. day 21 内存管理,正则

    一.内存管理 1.垃圾回收 不能被程序访问到的数据,就称之为垃圾. 2.引用计数 引用计数是用来记录值得内存地址被记录的次数 每一次对值地址的引用都可以使得该值的引用计数+1 每一次对值地址的释放都可 ...

  3. linux centos7下源码 tar安装mysql5.7.23(5.7以上均可试用)

    1.工具:mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz.centos7 2.解压后,将mysql-5.7.22-linux-glibc2.12-x86_64里面 ...

  4. Linux系统上安装、卸载JAVA、TOMCAT的方法

    一. 安装JAVA 安装方法1:手工上传 创建安装目录上传JAVA安装包 Normal 0 7.8 磅 0 2 false false false EN-US ZH-CN X-NONE /* Styl ...

  5. 关于SpringMVC的配置流程以及一些细节

    首先说道SpringMvc是什么,SpringMVC是Spring框架里面的一个子框架,它对网站前后端的代码分层做了一套实现,这套实现给我们带来了几个好处,首先第一,SpringMVC实现了一个请求对 ...

  6. python实现三级菜单间的前后跳转

    #录入菜单def createMenu():    Menu = {}    provinces = ["陕西","四川","江苏"] sh ...

  7. 3--Postman--变量(environment&global)

    (1) Environment clear an environment variable: pm.environment.unset("variable_key")--recom ...

  8. 关于linux 共享内存查看已经完整释放

    完整删除共享内存脚本 #!/bin/sh function rmshm() { zero_status=`ipcs -m|awk '{print $6}'|grep -w 0|wc -l` if [ ...

  9. iptables 添加raw提高服务器性能之路

    前几天准备把线上一批机器添加iptables.于是梳理出几个需要通外网的端口,80,81等. 防火墙规则如下: #### filter table ########################## ...

  10. JavaApi

    #####indexof() package day07Test;/** * 统计字符在句子中出现的次数 * @author gengyantao * */public class Demo1 { p ...