Como alterar a configuração do Redis a partir da linha de comando

Introdução

Redis é um armazenamento de dados de chave-valor em memória, de código aberto. O Redis possui vários comandos que permitem fazer alterações nas configurações do servidor Redis em tempo real. Este tutorial abordará alguns desses comandos e também explicará como tornar essas alterações de configuração permanentes.

Como Usar Este Guia

Este guia é escrito como uma folha de referência com exemplos autocontidos. Incentivamos você a pular para qualquer seção que seja relevante para a tarefa que está tentando concluir.

Os comandos mostrados neste guia foram testados em um servidor Ubuntu 22.04 executando o Redis na versão 6.0.16. Para configurar um ambiente semelhante, você pode seguir o Passo 1 do nosso guia sobre Como Instalar e Proteger o Redis no Ubuntu 22.04. Demonstraremos como esses comandos se comportam executando-os com o redis-cli, a interface de linha de comando do Redis. Se estiver usando uma interface Redis diferente — como Redli, por exemplo — a saída exata de certos comandos pode variar.

Alternativamente, você pode provisionar uma instância gerenciada de banco de dados Redis para testar esses comandos, mas dependendo do nível de controle permitido pelo seu provedor de banco de dados, alguns comandos neste guia podem não funcionar conforme descrito. Para provisionar um Banco de Dados Gerenciado DigitalOcean, siga nossa documentação do produto de Bancos de Dados Gerenciados. Em seguida, você deve instalar o Redli ou configurar um túnel TLS para se conectar ao Banco de Dados Gerenciado por TLS.

Tenha em mente que bancos de dados Redis gerenciados geralmente não permitem que os usuários alterem o arquivo de configuração. Se você estiver trabalhando com um Banco de Dados Gerenciado da DigitalOcean, os comandos descritos neste guia resultarão em erros.

Alterando a Configuração do Redis

Os comandos descritos nesta seção apenas alterarão o comportamento do servidor Redis durante a sessão atual, ou até você executar config rewrite, o que os tornará permanentes. Você pode alterar o arquivo de configuração do Redis diretamente abrindo-o e editando-o com o seu editor de texto preferido. Por exemplo, você pode usar o nano para fazer isso:

  1. sudo nano /etc/redis/redis.conf

Aviso: O comando config set é considerado perigoso. Ao alterar o arquivo de configuração do seu Redis, é possível que você faça com que seu servidor Redis se comporte de maneiras inesperadas ou indesejáveis. Recomendamos que você execute o comando config set apenas se estiver testando seu comportamento ou se tiver absoluta certeza de que deseja fazer alterações na configuração do Redis.

Pode ser do seu interesse renomear este comando para algo com uma menor probabilidade de ser executado acidentalmente.

config set permite que você reconfigure o Redis em tempo de execução sem precisar reiniciar o serviço. Ele utiliza a seguinte sintaxe:

  1. config set parameter value

Por exemplo, se você quiser alterar o nome do arquivo de despejo do banco de dados que o Redis produzirá após executar um comando save, você pode executar um comando como o seguinte:

  1. config set "dbfilename" "new_file.rdb"

Se a alteração na configuração for válida, o comando retornará OK. Caso contrário, ele retornará um erro.

Observação: Nem todos os parâmetros no arquivo redis.conf podem ser alterados com uma operação config set. Por exemplo, você não pode alterar a senha de autenticação definida pelo parâmetro requirepass.

Tornando Alterações na Configuração Permanentes

config set não altera permanentemente o arquivo de configuração da instância do Redis; ele apenas muda o comportamento do Redis durante a execução. Para editar redis.conf após executar um comando config-set e tornar permanente a configuração da sessão atual, execute config rewrite:

  1. config rewrite

Este comando prioriza a preservação dos comentários e da estrutura geral do arquivo redis.conf original, com apenas alterações mínimas para corresponder às configurações atualmente usadas pelo servidor.

Assim como config set, se a reescrita for bem-sucedida, config rewrite retornará OK.

Verificando a Configuração do Redis

Para ler os parâmetros de configuração atuais de um servidor Redis, execute o comando config get. O config get recebe um único argumento, que pode ser uma correspondência exata de um parâmetro usado em redis.conf ou um padrão glob. Por exemplo:

  1. config get repl*

Dependendo da configuração do seu Redis, este comando retornará algo semelhante ao seguinte:

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"

Você também pode obter todos os parâmetros de configuração suportados por config set executando config get *.

Conclusão

Este guia detalha os comandos redis-cli usados para fazer alterações no arquivo de configuração de um servidor Redis. Se houver outros comandos, argumentos ou procedimentos relacionados que você gostaria de aprender neste guia, por favor, pergunte ou faça sugestões nos comentários.

Para mais informações sobre comandos Redis, confira nossa série de tutoriais sobre Como Gerenciar um Banco de Dados Redis.

Source:
https://www.digitalocean.com/community/cheatsheets/how-to-change-redis-configuration