Redis è un datastore open-source, in memoria, di tipo chiave-valore. Redis dispone di diversi comandi che consentono di apportare modifiche alle impostazioni di configurazione del server Redis al volo. Questo tutorial discuterà alcuni di questi comandi, e spiegherà anche come rendere permanenti tali modifiche alla configurazione.
Come Utilizzare Questa Guida
Questa guida è scritta come un promemoria con esempi autonomi. Ti incoraggiamo a saltare a qualsiasi sezione rilevante per il compito che stai cercando di completare.
I comandi mostrati in questa guida sono stati testati su un server Ubuntu 22.04 con Redis versione 6.0.16. Per configurare un ambiente simile, puoi seguire Passaggio 1 della nostra guida su Come Installare e Sicurizzare Redis su Ubuntu 22.04. Dimostreremo il comportamento di questi comandi eseguendoli con redis-cli
, l’interfaccia a riga di comando di Redis. Se stai utilizzando un’interfaccia Redis diversa — Redli, ad esempio — l’output esatto di alcuni comandi potrebbe differire.
In alternativa, potresti provvedere a una istanza di database Redis gestita per testare questi comandi, ma a seconda del livello di controllo consentito dal tuo fornitore di database, alcuni comandi in questa guida potrebbero non funzionare come descritto. Per provvedere a un Database Gestito DigitalOcean, segui la nostra documentazione sul prodotto Database Gestiti. Successivamente, devi o installare Redli o configurare un tunnel TLS per connetterti al Database Gestito tramite TLS.
Sii consapevole che i database Redis gestiti di solito non consentono agli utenti di modificare il file di configurazione. Se stai lavorando con un Database Gestito da DigitalOcean, i comandi descritti in questa guida produrranno errori.
Modifica della Configurazione di Redis
I comandi descritti in questa sezione altereranno solo il comportamento del server Redis per la durata della sessione corrente, o fino a quando eseguirai config rewrite
, che li renderà permanenti. Puoi modificare direttamente il file di configurazione di Redis aprendolo e modificandolo con il tuo editor di testo preferito. Ad esempio, puoi usare nano
per farlo:
- sudo nano /etc/redis/redis.conf
Avviso: Il comando config set
è considerato pericoloso. Modificando il file di configurazione di Redis, è possibile che il server Redis si comporti in modi inaspettati o indesiderati. Consigliamo di eseguire il comando config set
solo se state testando il suo comportamento o siete assolutamente certi di voler apportare modifiche alla configurazione di Redis.
Potrebbe essere nel vostro interesse rinominare questo comando con qualcosa che ha una minore probabilità di essere eseguito accidentalmente.
config set
consente di riconfigurare Redis durante l’esecuzione senza dover riavviare il servizio. Utilizza la seguente sintassi:
- config set parameter value
Ad esempio, se voleste cambiare il nome del file di dump del database che Redis produrrà dopo aver eseguito un comando save
, potreste eseguire un comando simile al seguente:
- config set "dbfilename" "new_file.rdb"
Se la modifica della configurazione è valida, il comando restituirà OK
. In caso contrario, restituirà un errore.
Nota: Non tutti i parametri nel file redis.conf
possono essere cambiati con un’operazione config set
. Ad esempio, non è possibile cambiare la password di autenticazione definita dal parametro requirepass
.
Rendere Permanent le Modifiche alla Configurazione
config set
non altera permanentemente il file di configurazione dell’istanza Redis; cambia solo il comportamento di Redis durante l’esecuzione. Per modificare redis.conf
dopo aver eseguito un comando config-set
e rendere permanente la configurazione della sessione corrente, esegui config rewrite
:
- config rewrite
Questo comando ha la priorità di preservare i commenti e la struttura generale del file redis.conf
originale, con solo cambiamenti minimi per adattarsi alle impostazioni attualmente utilizzate dal server.
Come config set
, se il rewrite ha successo, config rewrite
restituirà OK
.
Controllo della configurazione di Redis
Per leggere i parametri di configurazione attuali di un server Redis, esegui il comando config get
. config get
richiede un singolo argomento, che può essere un corrispondenza esatta di un parametro utilizzato in redis.conf
o un modello globale. Ad esempio:
- config get repl*
In base alla configurazione di Redis, questo comando restituirà qualcosa di simile a quanto segue:
Output 1) "repl-ping-slave-period"
2) "10"
3) "repl-timeout"
4) "60"
5) "repl-backlog-size"
6) "1048576"
7) "repl-backlog-ttl"
8) "3600"
9) "repl-diskless-sync-delay"
10) "5"
11) "repl-disable-tcp-nodelay"
12) "no"
13) "repl-diskless-sync"
14) "no"
Puoi anche ottenere tutti i parametri di configurazione supportati da config set
eseguendo config get *
.
Conclusione
Questa guida illustra i comandi redis-cli
utilizzati per apportare modifiche al file di configurazione di un server Redis. Se ci sono altri comandi, argomenti o procedure correlati di cui vorresti sapere in questa guida, per favore chiedi o fai suggerimenti nei commenti.
Per ulteriori informazioni sui comandi Redis, consulta la nostra serie di tutorial su Come Gestire un Database Redis.
Source:
https://www.digitalocean.com/community/cheatsheets/how-to-change-redis-configuration