Odpovědi na tuto otázku se pokusí odstranit více klíčů v jediném DEL . Klávesy odpovídající danému vzoru se však NEMUSÍ nacházet ve stejném slotu a Redis Cluster NEPODPORUJE příkaz s více klávesami, pokud tyto klíče nepatří do stejného slotu. Proto se zobrazí chybová zpráva.
Chcete-li tento problém vyřešit, musíte DEL tyto klávesy jedna po druhé:
redis-cli --scan --pattern "foo*" |xargs -L 1 redis-cli del
-L možnost pro xargs příkaz určuje počet klíčů, které se mají odstranit. Tuto možnost musíte zadat jako 1 .
Chcete-li odstranit všechny klíče odpovídající vzoru, musíte také spustit výše uvedený příkaz pro všechny hlavní uzly ve vašem clusteru.
POZNÁMKA
-
Pomocí tohoto příkazu musíte tyto klíče mazat jeden po druhém, což může být velmi pomalé. Musíte zvážit přepracování databáze a použít hash-tagy aby klíče odpovídající vzoru patřily do stejného slotu. Takže tyto klíče můžete odstranit jedním
DEL. -
Buď
SCANneboKEYSjsou neefektivní, zejménaKEYSby neměly být použity ve výrobě. Musíte zvážit vytvoření indexu pro tyto klíče.