O WP-CLI é uma poderosa ferramenta de linha de comando para gerenciar sites WordPress.
Além de tarefas básicas, como instalar plugins e atualizar temas, ele também permite criar backups manuais de maneira rápida e eficiente.
Neste guia, você aprenderá como usar o WP-CLI para criar backups do banco de dados e dos arquivos do WordPress, além de dicas para automatizar esse processo com scripts agendados.
O que é WP-CLI?
O WP-CLI (WordPress Command Line Interface) é uma interface de linha de comando que permite realizar diversas operações no WordPress diretamente pelo terminal, sem necessidade de acessar o painel administrativo.
Ele é especialmente útil para desenvolvedores e administradores que gerenciam múltiplos sites.
Com o WP-CLI, você pode:
- Gerenciar temas, plugins e usuários.
- Realizar atualizações.
- Exportar e importar bancos de dados.
- E muito mais.
Por que usar o WP-CLI para backups?
- Velocidade: Backups via WP-CLI são rápidos e não exigem interface gráfica.
- Eficiência: Você pode personalizar quais partes do site deseja incluir no backup.
- Automação: Facilmente integrado a scripts para agendamento automático.
- Flexibilidade: Compatível com servidores remotos e sistemas de CI/CD.
Passo a Passo: Criando Backups com WP-CLI
1. Exportando o Banco de Dados
O banco de dados contém todo o conteúdo e configurações do site WordPress. Para exportá-lo, use o comando:
wp db export nome-do-backup.sql
O arquivo nome-do-backup.sql
será gerado no diretório raiz do WordPress.
Você pode especificar um caminho completo para salvar o arquivo em outro local:
wp db export /caminho/para/backups/nome-do-backup.sql
2. Compactando os Arquivos do Site
Os arquivos do WordPress incluem:
- Temas.
- Plugins.
- Uploads (imagens, vídeos, documentos, etc.).
- Arquivos de configuração (
wp-config.php
,.htaccess
).
Para criar um backup dos arquivos, use o comando tar
para compactar o diretório do WordPress:
tar -czf backup-arquivos.tar.gz /caminho/para/wordpress
-c
: Cria um novo arquivo.-z
: Compacta usando gzip.-f
: Especifica o nome do arquivo compactado.
O resultado será um arquivo backup-arquivos.tar.gz
, que pode ser armazenado localmente ou transferido para um serviço de armazenamento em nuvem.
3. Automatizando o Processo com Scripts
Para sites que precisam de backups regulares, você pode criar um script shell que combina os dois passos acima (backup do banco de dados e dos arquivos).
Exemplo de Script de Backup
Crie um arquivo chamado backup-wordpress.sh
:
#!/bin/bash
# Diretórios e arquivos
DATA=$(date +%F_%H-%M-%S)
BACKUP_DIR="/caminho/para/backups"
WP_DIR="/caminho/para/wordpress"
DB_BACKUP="${BACKUP_DIR}/db-backup-${DATA}.sql"
FILES_BACKUP="${BACKUP_DIR}/files-backup-${DATA}.tar.gz"
# Exportar o banco de dados
wp db export $DB_BACKUP
# Compactar os arquivos do WordPress
tar -czf $FILES_BACKUP $WP_DIR
# Mensagem de confirmação
echo "Backup concluído! Banco de dados: $DB_BACKUP, Arquivos: $FILES_BACKUP"
Tornando o Script Executável
Dê permissão para executar o script:
chmod +x backup-wordpress.sh
Execute o script:
./backup-wordpress.sh
4. Agendando Backups com Cron
Você pode usar o cron para agendar backups automáticos. Por exemplo, para executar o script de backup diariamente às 2h da manhã:
Edite as tarefas cron:
crontab -e
Adicione a linha:
0 2 * * * /caminho/para/backup-wordpress.sh
Explicação da Sintaxe:
0 2 * * *
: Executa às 2h da manhã todos os dias./caminho/para/backup-wordpress.sh
: Caminho completo para o script.
5. Armazenando Backups Externamente
Para maior segurança, armazene seus backups em serviços externos como Google Drive, Dropbox ou AWS S3. Aqui está um exemplo usando o rclone, uma ferramenta para sincronização com serviços de armazenamento em nuvem.
Instalando o Rclone
Instale o Rclone no servidor:
sudo apt install rclone
Configure o serviço de armazenamento:
rclone config
Adicione o envio para a nuvem ao seu script:
rclone copy /caminho/para/backups remote:/pasta-na-nuvem
6. Restauração de Backups
Restaurar o Banco de Dados
Para importar um backup do banco de dados, use:
wp db import nome-do-backup.sql
Restaurar os Arquivos
Extraia o arquivo compactado para restaurar os arquivos do site:
tar -xzf backup-arquivos.tar.gz -C /caminho/para/wordpress
Conclusão
Usar o WP-CLI para backups manuais é uma solução eficiente, flexível e altamente customizável.
Com a automação por meio de scripts e agendamento via cron, você garante que seu site esteja sempre protegido, reduzindo o risco de perda de dados.
Se você quer aprender mais sobre como dominar o WP-CLI e outras práticas avançadas no WordPress, inscreva-se no Curso Avançado de WordPress e leve suas habilidades ao próximo nível!