2015-02-18 20 views
5

Redis-cli kullanılarak belirli bir modelin redis ile eşleştirilmesiyle ilgili tuşlar nasıl silinir. Tüm foo'ları aşağıdaki listeden silmek istiyorum.Redis'te belirli bir desenle eşleşen tuşlar nasıl silinir

KEYS * 

foo:1 
foo:2 
bar:1 
foo:3 
bar:2 
foo:4 
+3

aynı konu üzerinde birden cevap sorular, ör http://stackoverflow.com/a/23399125/3160475 –

+0

olası yinelenen vardır [Nasıl Redis kullanarak bir deseni eşleştiren anahtarları atomik olarak silme] (http://stackoverflow.com/questions/4006324/how-to-atomically-delete-keys-matching-a-pattern-using-redis) Büyük takımlar için bile güzel bir çözüm, – bitoiu

+0

> 1000 anahtar. https://stackoverflow.com/questions/4006324/how-to-atomically-delete-keys-matching-a-pattern-using-redis#comment39607023_16974060 –

cevap

18

Soru hakkındaki yorumda da belirtildiği gibi, burada daha önce başka birçok yanıt var. Bir üretimde bunu yapmayı düşünürseniz, kesinlikle yukarıda bağlantılı olanı okuyun.

Ben ara sıra komut satırı temizleme için en yararlı bulan bendim: "How to atomically delete keys matching a pattern using Redis" den

redis-cli KEYS "*" | xargs redis-cli DEL

.

+1

KEYS yerine "redis-cli --scan" kullanırım. Özellikle canlı ortamda. KEYS kullanımı önerilmez. –

3

Sadece bir Redis veritabanından belirli bir desenle (hatta *) eşleşen anahtarları silmenizi sağlayan npm ve github komut satırı arabirimi yardımcı programını yayımladım.

Burada daha faydalı olabilir:

https://www.npmjs.com/package/redis-utils-cli

İlgili konular