Início Rápido com Redis
Após instalar o Redis, vamos começar rapidamente e aprender as operações básicas do Redis.
Iniciando o Servidor Redis
Inicialização em Primeiro Plano
A maneira mais simples de iniciar o Redis — ele executa em primeiro plano e registra logs diretamente no terminal.
redis-server
Saída:
_._
_.-``__ ''-._
_.-`` `. `_. ''-._
_.-`` .-`` .-```. ```.-'' ''-._
.-`` .-`` .-`````-..-'''.-'' ''-._
( ' . ''-. ``.
|`. `-. `-. `-. `-. `-.)
| `-. `-. `-. `-. `-. `'
`-. `-. `-. `-. `-. `-. _
`-. `-. `-. `-. `-. .-'
`-. `-. `-. `-. .-'
`-. `-. `-. .-'
`-. `-. .-'
`-. .-'
`-
Redis 7.0.11 (00000000/0) 64 bit
Executando em modo autônomo
Porta: 6379
PID: 12345
Pronto para aceitar conexões
Ctrl+C para parar o servidor Redis.
Inicialização em Segundo Plano
Executar em segundo plano é recomendado para ambientes de produção.
# Método 1: Usar parâmetro daemonize
redis-server --daemonize yes
# Método 2: Editar arquivo de configuração
# Editar /etc/redis/redis.conf
daemonize yes
# Então iniciar
redis-server /etc/redis/redis.conf
Iniciar em uma Porta Específica
# Usar porta 6380
redis-server --port 6380
Verificar se o Redis está Executando
# Linux
ps aux | grep redis-server
# Ou usar redis-cli
redis-cli ping
# Retorna PONG se o Redis estiver executando
Conectando ao Redis
Usando redis-cli
redis-cli é o cliente de linha de comando integrado do Redis.
# Conectar ao Redis local (padrão 127.0.0.1:6379)
redis-cli
# Após conectar, o prompt muda para:
127.0.0.1:6379>
Especificando Host e Porta
# Conectar a um host e porta específicos
redis-cli -h 192.168.1.100 -p 6379
# Conectar a uma porta local diferente
redis-cli -p 6380
Conectando com Senha
# Método 1: Argumento de linha de comando
redis-cli -a sua_senha
# Método 2: Autenticar após conectar
redis-cli
AUTH sua_senha
OK
-a expõe a senha no histórico de comandos. Para produção, use o comando AUTH ou arquivo de configuração.
Conectando via Unix Socket
redis-cli -s /tmp/redis.sock
Saindo do redis-cli
# Sair da conexão
exit
# ou
quit
# ou pressione Ctrl+D
Primeiro Comando: PING
O comando PING testa se a conexão está funcionando, similar ao comando ping de rede.
Exemplo: Testar Conexão
PING
Se o Redis estiver funcionando corretamente, ele retorna PONG.
PING com Mensagem
PING "Olá"
"Olá"
PING pode carregar uma mensagem, e o Redis a retorna exatamente como foi enviada.
Comandos Básicos: SET e GET
SET e GET são os comandos mais usados para armazenar e recuperar dados de string.
SET: Armazenar Dados
O comando SET define um par chave-valor.
Exemplo: SET Básico
SET nome "Tutorial Redis"
GET nome
Exemplo: Com Expiração
# Definir uma chave que expira em 10 segundos
SET temp "temporário" EX 10
GET temp
# Ou usar PX para milissegundos
SET temp2 "temp" PX 5000
GET temp2
Exemplo: Definir Apenas Quando a Chave Não Existe
# NX: Só definir se a chave não existir
SET nome "Novo Nome" NX
# XX: Só definir se a chave existir
SET nome "Nome Atualizado" XX
GET nome
Sintaxe Completa do Comando SET
SET key value [NX|XX] [GET] [EX seconds|PX milliseconds|EXAT timestamp|PXAT timestamp]
| Parâmetro | Descrição |
|---|---|
| NX | Só definir se a chave não existir |
| XX | Só definir se a chave existir |
| GET | Retornar o valor antigo (Redis 6.2+) |
| EX seconds | Definir expiração em segundos |
| PX milliseconds | Definir expiração em milissegundos |
| EXAT timestamp | Definir expiração como timestamp Unix (segundos) |
| PXAT timestamp | Definir expiração como timestamp Unix (milissegundos) |
GET: Ler Dados
O comando GET recupera o valor de uma chave.
Exemplo: GET Básico
GET nome
# Chave não existe, retorna nil
GET naoexiste
Exemplo: GETSET (Obter Valor Antigo, Definir Novo Valor)
GETSET nome "Novo Valor"
GET nome
Outros Comandos Básicos
DEL: Deletar uma Chave
SET temp "delete-me"
OK
DEL temp
(integer) 1 # Deleção bem-sucedida, retorna número de chaves deletadas
DEL temp
(integer) 0 # Chave não existe, 0 deletadas
EXISTS: Verificar se Chave Existe
SET nome "Redis"
OK
EXISTS nome
(integer) 1 # Existe
EXISTS naoexiste
(integer) 0 # Não existe
KEYS: Encontrar Chaves
# Definir alguns dados de teste
SET user:1 "Alice"
SET user:2 "Bob"
SET product:1 "iPhone"
# Encontrar todas as chaves (use com cuidado!)
KEYS *
1) "user:1"
2) "user:2"
3) "product:1"
4) "name"
# Encontrar chaves que correspondem a um padrão
KEYS user:*
1) "user:1"
2) "user:2"
KEYS *:1
1) "user:1"
2) "product:1"
FLUSHDB: Limpar Banco de Dados Atual
# Limpar todos os dados do banco de dados atual (perigoso!)
FLUSHDB
OK
DBSIZE: Contar Chaves
DBSIZE
(integer) 4 # O banco de dados atual tem 4 chaves
Tipos de Retorno de Comandos
Comandos Redis retornam diferentes tipos de resultados:
| Exemplo de Retorno | Tipo | Descrição |
|---|---|---|
OK |
String simples | Operação bem-sucedida |
"valor" |
String | Valor de string |
(integer) 1 |
Inteiro | Resultado numérico |
1) "a"2) "b" |
Array | Lista ou conjunto |
(nil) |
Nulo | Chave não existe ou sem resultado |
# Error |
Erro | Falha na execução do comando |
Executando Comandos em Lote
Modo Interativo
Digite comandos um por um no redis-cli:
SET a 1
OK
SET b 2
OK
GET a
"1"
Modo Pipeline
Execute comandos de um arquivo em lote:
# Criar um arquivo de comandos commands.txt
echo "SET key1 value1" > commands.txt
echo "SET key2 value2" >> commands.txt
echo "GET key1" >> commands.txt
# Executar lote
cat commands.txt | redis-cli
Saída:
OK
OK
"value1"
Execução Direta na Linha de Comando
# Executar um único comando diretamente
redis-cli SET minhachave "meuvalor"
# Saída: OK
redis-cli GET minhachave
# Saída: "meuvalor"
# Executar múltiplos comandos
redis-cli << EOF
SET a 1
SET b 2
GET a
GET b
EOF
Usando o Sistema de Ajuda
Redis tem um sistema de ajuda integrado abrangente.
Ver Ajuda do Comando
HELP SET
SET key value [NX|XX] [GET] [EX seconds|PX milliseconds|EXAT unix-time-seconds|PXAT unix-time-milliseconds|KEEPTTL]
summary: Define o valor de string de uma chave
since: 1.0.0
group: string
Ver Grupos de Comandos
HELP @string
# Lista todos os comandos de string
Autocompletar com Tab
redis-cli suporta a tecla Tab para autocompletar comandos:
SET<pressione Tab>
# Autocompleta para SET
Dicas Úteis
1. Ver Informações do Servidor
INFO
# Retorna informações extensas do servidor
# Ver seções específicas
INFO server
INFO memory
INFO stats
2. Ver Configuração
# Ver toda a configuração
CONFIG GET *
# Ver configuração específica
CONFIG GET maxmemory
1) "maxmemory"
2) "0"
3. Monitorar Comandos
# Monitoramento em tempo real de todos os comandos executados
MONITOR
OK
# Em seguida, exibe todos os comandos de todos os clientes
4. Ver Conexões de Clientes
CLIENT LIST
id=1 addr=127.0.0.1:52345 fd=8 name= age=10 idle=0 ...
❓ Perguntas Frequentes
ps aux | grep redis), confirme se a porta está correta e verifique as configurações de firewall.Q: Como saio do redis-cli?
📖 Resumo
- redis-server inicia o servidor Redis, redis-cli se conecta a ele
- PING testa a conexão, SET/GET armazena e recupera strings
- DEL deleta chaves, EXISTS verifica se uma chave existe
- KEYS encontra chaves (cuidado em produção), DBSIZE conta chaves
- Use HELP para ajuda de comandos, tecla Tab para autocompletar
- MONITOR observa comandos, INFO mostra informações do servidor
📝 Atividades
- Prática de inicialização: Inicie o servidor Redis, conecte com redis-cli e execute o comando PING
- Operações básicas: Use SET para armazenar seu nome e idade, depois use GET para recuperá-los
- Prática de expiração: Defina uma chave com expiração, espere expirar, depois use GET para verificar
- Operações em lote: Crie um arquivo de texto com múltiplos comandos Redis e execute usando modo pipeline
Próxima Lição
Na próxima lição, nós aprenderemos sobre Configuração do Redis, abordando o arquivo de configuração do Redis e opções comuns de configuração.



