Introducción
Redis es una solución de código abierto para el almacenamiento de estructuras de datos. Se utiliza principalmente como almacén de clave-valor, lo que le permite funcionar como base de datos, almacenamiento en caché y agente de mensajes.
En este tutorial, cubriremos diferentes formas de eliminar estos valores-clave (claves) y borrar la memoria caché de Redis.
Requisitos previos
- La última versión de Redis (consulte nuestra guía sobre cómo instalar Redis en Ubuntu, en Mac o ejecutar Redis en Docker)
- Acceso a la línea de comandos/ventana de terminal
Borrar caché de Redis con el comando redis-cli
La forma más fácil de borrar el caché de Redis es usar redis-cli
comando.
Las bases de datos en Redis se almacenan individualmente. Uso de redis-cli
El comando le permite borrar las claves de todas las bases de datos o solo de una única base de datos especificada.
Sintaxis del comando redis-cli
El redis-cli
El comando utiliza la siguiente sintaxis:
redis-cli [database number] [option]
donde:
[option]
– Le permite elegir entre borrar todas las bases de datos o una base de datos específica de su elección.[database number]
– Le permite especificar qué base de datos desea borrar.
Eliminación de todas las claves
Para eliminar claves de todas las bases de datos de Redis, use el siguiente comando:
redis-cli flushall
A partir de la versión 4.0.0, Redis puede borrar claves en segundo plano sin bloquear su servidor. Para hacer esto, use el flushall
comando con async
parámetro:
redis-cli flushall async
Eliminación de claves de una base de datos específica
Use el siguiente comando para borrar solo una base de datos específica:
redis-cli flushdb
Uso de flushdb
El comando sin ningún parámetro borra la base de datos actualmente seleccionada. Usa el -n
parámetro con el número de base de datos para seleccionar una base de datos específica que desea borrar:
redis-cli -n [database number] flushdb
También puede usar el async
opción al borrar claves de bases de datos individuales:
redis-cli -n [database number] flushdb async
Automatización de la limpieza de caché con Ansible
Si tiene una gran cantidad de servidores Redis en ejecución, borrar el caché de cada uno manualmente lleva tiempo.
Para acelerar este proceso, use una herramienta como Ansible para borrar el caché en todos sus servidores Redis al mismo tiempo:
ansible all -m command -a '/usr/bin/redis-cli flushall '
Ejecutar este comando aplica el flushall
comando a cada servidor en su archivo de inventario de Ansible:
all
– Le permite elegir todos los hosts remotos en el archivo de inventario de Ansible.-m
– Le permite elegir un módulo para ejecutar.-a
– Proporciona un argumento para el módulo. En este caso, el módulo de comando ejecuta elflushall
comando conredis-cli
.