删除所有匹配的键

时间:2014-10-26 14:24:09

标签: redis stackexchange.redis

我想从Redis中删除所有与SomePrefix *匹配的键。可能吗 ? 我只看到m_connectionMultiplexer.GetDatabase()。KeyDelete()但不是库中的KeyMatch()或GetAllKeys()。

最好不要使用Lua脚本,例如link by Leonid Beschastny

我希望在应用程序的开发状态的Web应用程序初始化时使用它。

1 个答案:

答案 0 :(得分:2)

SE.Redis直接模仿服务器公开的功能。服务器没有“与此模式匹配的删除键”功能。它确实具有“扫描匹配此模式的密钥”(通过GetServer().GetKeys(...)),并且具有“删除此密钥/这些密钥”(通过GetDatabase.KeyDelete(...))。您可以批量迭代匹配的键,依次删除每个批次。因为您可以管道请求,所以不需要支付每批的延迟。

作为替代实现:按数字数据库(select)或服务器对数据进行分区,并使用flushdb / flush