redis 清理某个key前缀的key
发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,redis清理某个前缀的key例如,某次研发上线代码,造成了某种前缀的key出现了脏数据(例如key前缀名称为 key_ ), 我们需要快速的清理掉这些问题key。常用的方法有2种:1、dump出一个
千家信息网最后更新 2026年11月03日redis 清理某个key前缀的key
redis清理某个前缀的key
例如,某次研发上线代码,造成了某种前缀的key出现了脏数据(例如key前缀名称为 key_ ), 我们需要快速的清理掉这些问题key。
常用的方法有2种:
1、dump出一个全量数据,然后找出符合条件的key,进行删除操作【推荐】
2、使用scan扫描redis,将全部key捞出来,然后再删除符合条件的key
我们这里使用第一种方法,具体如下操作:
1、在slave节点bgsave命令dump出一份全量数据
bgsave ,生成的文件名类似 dump-6379.rdb
2、 安装 rdb 解析工具
pip install rdbtools python-lzf # python2.7 下 一行命令即可完成安装rdb -c memory dump-6379.rdb > memory.csv # 用这个命令将rdb进行分析
3、过滤出符合条件的key
awk -F ',' '{print $3 , $NF }' memory.csv > keys.txt # 过滤出key的名称和过期时间egrep key_ keys.txt > /root/key_.txt # 将 key_ 前缀的key 过滤出来cat /root/key_.txt | sort -k 2 -r > /root/sort_keys # 对key按照日期进行倒序排序egrep 2019-09-10 /root/sort_keys > /root/match_keys # 注意:我这里紧急处理,只过滤出 2019-09-10 过期的key(这是最新的数据,也是目前业务最常访问的key,也就是最需要紧急处理的)awk '{print $1}' /root/match_keys > /root/filter_keys # 将最终需要处理的key重定向到一个文件mkdir /root/test/split -2000 /root/filter_keys /root/test/ # 将 filter_keys 这个文件 按照每个2k行切分成多个文件,便于后续并行处理然后,我们写个脚本,批量处理下:
vim /root/batch.sh 内容如下:
for i in `ls /root/test/`; doecho "while read line;doecho \"del \$line\" | redis-cli -h 127.0.0.1 -p 6379 done < /root/test/${i}" > /root/run_${i}.shchmod +x /root/run_${i}.sh done这样就生成了一堆的脚本
下面写个脚本,批量执行下就好了;
#!/bin/bashfor i in `ls run*.sh`; do nohup sh $i > /dev/null &done
处理
前缀
数据
文件
命令
条件
脚本
名称
方法
生成
一行
业务
也就是
代码
倒序
内容
多个
工具
常用
文件名
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
云南咖啡
互联网科技公司排名
互联网科技工作委员会副主任毛军
广州百单互联网科技有限公司
疫情对互联网科技公司影响
浩特互联网科技
撒么互联网科技公司
互联网汽车科技小镇
未来五年的互联网科技
坤平互联网科技
米聚互联网科技南京有限公司排面
广州新华互联网科技学校电竞方面
深圳艾果互联网通讯科技
为客找房互联网科技公司怎么样
云南省自由互联网科技有限公司
互联网科技数字货币
图游互联网科技
江苏互联网科技小贷
广州智享互联网科技
银川新华互联网科技学校原画
伟宏互联网科技
互联网科技公司税收优惠
互联网科技未来
互联网科技的
科技创新互联网企业
互联网金融科技平台
温州喔噻互联网科技有限公司
全球顶尖互联网科技公司
浙南科技城互联网大厦招聘
科技互联网经济论坛