「提效脚本 redis」 使用Lua批量删除key

在redis里面可以使用keys aa* 进行匹配所有的key,却没办法直接删除所有匹配的key。

所以可以使用lua脚本进行增强。

以删除 suggest* 开头的key为例。

shell 复制代码
eval  "local keys = redis.call('keys', 'suggest*')  for _, key in ipairs(keys) do  redis.call('del', key) end" 0

脚本分析:

lua 复制代码
-- 删除 Redis 中所有已有 'suggest' 前缀的键值对
local keys = redis.call('keys', 'suggest*')
for _, key in ipairs(keys) do
  redis.call('del', key)
end

这是 Redis 的 Lua 脚本语言,意思是:

  1. 使用 Redis 的 eval 命令执行该脚本。
  2. 获取所有以 'suggest' 开头的键名,赋值给 keys 变量。使用 Redis 的 keys 命令实现。
  3. 遍历 keys 变量中的每个键名 key,并执行 redis.call('del', key),即删除对应的键值对。
  4. 返回值 0 表示无需传递参数。

总体来说,这是一个用于删除 Redis 中所有已有 'suggest' 前缀的键值对的脚本。

相关推荐
Elastic 中国社区官方博客1 分钟前
搜索倍增器:推动收入、生产力和 AI 实现规模化
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
保定公民2 小时前
达梦数据库存储过程中的数组类型详解:基础数组与记录数组的差异化应用
数据库·达梦·存储过程·达梦数据库·dm8·dm
梦Arrebol2 小时前
Redis 内容及相关实验
数据库·redis
大模型码小白3 小时前
Spring AI Tool 实现自然语言操作 MySQL 数据库详解
服务器·开发语言·数据库·人工智能·python·mysql·spring
DBA大董5 小时前
TDengine3.0 DBA常用的运维命令和SQL2
运维·数据库·时序数据库·dba·tdengine
ManageEngineITSM5 小时前
什么是CMDB?配置管理数据库的定义、作用与建设方法一文讲清
大数据·数据库·人工智能·资产管理·变更管理
IvorySQL5 小时前
PostgreSQL 日报|PG19 外键快速路径隐患已修复(8 月 23 日)
数据库·postgresql
Elastic 中国社区官方博客6 小时前
OpenTelemetry Java 扩展:无需分叉 agent 即可自定义追踪
java·大数据·运维·开发语言·数据库·人工智能·elasticsearch
只爱喝胡辣汤6 小时前
Redis Intset(整数集合)技术文档
redis