如何批量删除redis中keys

如何批量删除redis中keys,第1张

在linux中 批量 *** 作redis中的 keys的方法:

1.统计个数:

redis中名称含有OMP_OFFLINE的key的个数;

src/redis-cli keys "*OMP_OFFLINE*"|wc -l

2.批量删除

批量删除 0号数据库中名称含有OMP_OFFLINE的key:

src/redis-cli -n 0 keys "*OMP_OFFLINE*"|xargs src/redis-cli -n 0 del

在redis的客户端环境中并不支持批量删除。

方案一:用keys ‘str*’ 列出要删除的key,接linux管道删除(linux命令行执行)

根据通配符查看待删除的 key :redis-cli KEYS "site_msg_999*”

借助 Linux 的 xargs 指令来完成这个动作:

如:

*/redis-cli keys "prefix*"

如果是访问特定的数据库,则可以:

*/redis-cli -n 0 keys "prefix*"

Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。从2010年3月15日起,Redis的开发工作由VMware主持。从2013年5月开始,Redis的开发由Pivotal赞助。

redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的 *** 作,而且这些 *** 作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改 *** 作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。

方案二:分两步先查询指定pattern的keys,再通过del key1 key2 key3 ...语句批量删除。

在redis的客户端环境中并不支持批量删除。


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

原文地址: http://outofmemory.cn/yw/8999643.html

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

发表评论

登录后才能评论

评论列表(0条)

保存