Svar på det spørgsmål forsøger at fjerne flere nøgler i en enkelt DEL
. Nøgler, der matcher det givne mønster, er dog muligvis IKKE placeret i det samme slot, og Redis Cluster understøtter IKKE flertastskommandoer, hvis disse nøgler ikke tilhører samme slot. Det er derfor, du får fejlmeddelelsen.
For at løse dette problem skal du DEL
disse taster én efter én:
redis-cli --scan --pattern "foo*" |xargs -L 1 redis-cli del
-L
mulighed for xargs
kommando angiver antallet af nøgler, der skal slettes. Du skal angive denne mulighed som 1
.
For at fjerne alle nøgler, der matcher mønsteret, skal du også køre ovenstående kommando for hver masterknude i din klynge.
BEMÆRK
-
Med denne kommando skal du slette disse nøgler én efter én, og det kan være meget langsomt. Du skal overveje at re-designe din database og bruge hash-tags for at få nøgler, der matcher mønsteret, til at høre til samme slot. Så du kan fjerne disse nøgler i en enkelt
DEL
. -
Enten
SCAN
ellerKEYS
kommandoen er ineffektive, isærKEYS
bør ikke bruges i produktionen. Du skal overveje at bygge et indeks for disse nøgler.