Las respuestas para esa pregunta intentan eliminar varias claves en un solo DEL
. Sin embargo, es posible que las claves que coincidan con el patrón dado NO se ubiquen en la misma ranura, y Redis Cluster NO admite el comando de varias teclas si estas claves no pertenecen a la misma ranura. Por eso recibes el mensaje de error.
Para solucionar este problema, debe DEL
estas claves una por una:
redis-cli --scan --pattern "foo*" |xargs -L 1 redis-cli del
El -L
opción para xargs
El comando especifica el número de claves a eliminar. Debe especificar esta opción como 1
.
Para eliminar todas las claves que coincidan con el patrón, también debe ejecutar el comando anterior para cada nodo maestro en su clúster.
NOTA
-
Con este comando, debe eliminar estas claves una por una, y eso puede ser muy lento. Debe considerar rediseñar su base de datos y usar etiquetas hash para hacer que las llaves que coincidan con el patrón pertenezcan a la misma ranura. Para que pueda eliminar estas claves en un solo
DEL
. -
O
SCAN
oKEYS
comando son ineficientes, especialmente,KEYS
no debe ser utilizado en la producción. Debe considerar crear un índice para estas claves.