Introduzione
Redis è una soluzione open source per l'archiviazione della struttura dei dati. Viene utilizzato principalmente come archivio chiave-valore, che gli consente di funzionare come database, archivio cache e broker di messaggi.
In questo tutorial tratteremo diversi modi in cui puoi eliminare questi valori-chiave (chiavi) e svuotare la cache Redis.
Prerequisiti
- L'ultima versione di Redis (consulta la nostra guida su come installare Redis su Ubuntu, su Mac o eseguire Redis su Docker)
- Accesso alla riga di comando/finestra del terminale
Cancella la cache Redis con il comando redis-cli
Il modo più semplice per svuotare la cache Redis è utilizzare il redis-cli
comando.
I database in Redis sono archiviati individualmente. Usando il redis-cli
Il comando consente di cancellare le chiavi da tutti i database o solo da un singolo database specificato.
Sintassi del comando redis-cli
Il redis-cli
comando utilizza la seguente sintassi:
redis-cli [database number] [option]
Dove:
[option]
– Ti consente di scegliere se cancellare tutti i database o un database specifico a tua scelta.[database number]
– Consente di specificare quale database si desidera cancellare.
Eliminazione di tutte le chiavi
Per eliminare le chiavi da tutti i database Redis, utilizzare il comando seguente:
redis-cli flushall
A partire dalla versione 4.0.0, Redis può cancellare le chiavi in background senza bloccare il server. Per farlo, usa il flushall
comando con il async
parametro:
redis-cli flushall async
Eliminazione di chiavi da un database specifico
Utilizzare il comando seguente per cancellare solo un database specifico:
redis-cli flushdb
Usando il flushdb
comando senza alcun parametro cancella il database attualmente selezionato. Usa il -n
parametro con il numero del database per selezionare un database specifico che si desidera cancellare:
redis-cli -n [database number] flushdb
Puoi anche utilizzare il async
opzione quando si cancellano le chiavi dai singoli database:
redis-cli -n [database number] flushdb async
Automatizzazione della cancellazione della cache utilizzando Ansible
Se hai un numero elevato di server Redis in esecuzione, svuotare manualmente la cache per ciascuno di essi richiede tempo.
Per velocizzare questo processo, usa uno strumento come Ansible per svuotare la cache su tutti i tuoi server Redis contemporaneamente:
ansible all -m command -a '/usr/bin/redis-cli flushall '
L'esecuzione di questo comando applica il flushall
comando a tutti i server nel tuo file di inventario Ansible:
all
– Ti consente di scegliere tutti gli host remoti nel file di inventario Ansible.-m
– Consente di scegliere un modulo da eseguire.-a
– Fornisce un argomento per il modulo. In questo caso, il modulo di comando esegue ilflushall
comando conredis-cli
.