N8n backup y restaurar workflows es uno de los usos más prácticos de n8n. Perder los workflows de n8n puede ser catastrófico para tu negocio. Conocer cómo hacer backup y restaurar workflows en n8n es una de las tareas más importantes de cualquier instalación en producción. En esta guía vemos todas las opciones disponibles.
Por qué es crítico hacer backup en n8n
n8n almacena toda su información en una base de datos (SQLite o PostgreSQL). Si el servidor falla, la base de datos se corrompe o actualiza mal, puedes perder:
- Todos los workflows creados
- Las credenciales configuradas
- El historial de ejecuciones
- La configuración de usuarios
Un sistema de backup de n8n bien configurado te permite recuperarte en minutos.
Método 1: Exportar workflows manualmente desde la interfaz
La forma más sencilla de hacer backup de workflows individuales:
- Abre n8n y ve al workflow que quieres exportar
- Haz clic en el menú ⋮ (tres puntos) → Download
- n8n descarga un archivo
.jsoncon el workflow completo
Para importar:
- Ve a Workflows → botón + → Import from file
- Selecciona el archivo
.json
Este método es perfecto para compartir workflows o hacer backups puntuales, pero no es práctico para backups automáticos de toda la instancia.
Método 2: Exportar todos los workflows con la CLI de n8n
n8n incluye una CLI para exportar e importar workflows de forma masiva. Es ideal para hacer backup de todos los workflows en n8n de una vez:
# Exportar todos los workflows a archivos JSON individuales
n8n export:workflow --all --output=/backups/workflows/
# Exportar todas las credenciales (cifradas)
n8n export:credentials --all --output=/backups/credentials/
Con Docker:
docker compose exec n8n n8n export:workflow --all --output=/backups/
Para restaurar:
n8n import:workflow --input=/backups/workflows/
n8n import:credentials --input=/backups/credentials/
Método 3: Backup de la base de datos completa
Este método hace un backup completo de n8n, incluyendo workflows, credenciales, usuarios e historial de ejecuciones.
SQLite (instalación por defecto)
# Detener n8n primero para evitar corrupción
docker compose stop n8n
cp ~/.n8n/database.sqlite /backups/n8n_$(date +%Y%m%d).sqlite
docker compose start n8n
PostgreSQL
docker compose exec -T postgres pg_dump -U n8n n8n > /backups/n8n_$(date +%Y%m%d_%H%M).sql
Script de backup automático
Este script hace backup automático de n8n cada día y elimina copias antiguas:
#!/bin/bash
BACKUP_DIR=/backups/n8n
DATE=$(date +%Y%m%d_%H%M%S)
N8N_DIR=/opt/n8n
mkdir -p $BACKUP_DIR
# Backup de la base de datos
docker compose -f $N8N_DIR/docker-compose.yml exec -T postgres \
pg_dump -U n8n n8n > $BACKUP_DIR/db_$DATE.sql
# Backup de workflows como JSON (más portátil)
docker compose -f $N8N_DIR/docker-compose.yml exec n8n \
n8n export:workflow --all --output=/tmp/workflows_$DATE/
docker cp $(docker compose -f $N8N_DIR/docker-compose.yml ps -q n8n):/tmp/workflows_$DATE \
$BACKUP_DIR/
# Eliminar backups de más de 30 días
find $BACKUP_DIR -name "db_*.sql" -mtime +30 -delete
find $BACKUP_DIR -type d -name "workflows_*" -mtime +30 -exec rm -rf {} +
echo "Backup completado: $DATE"
Activa el backup diario:
chmod +x /opt/backup-n8n.sh
crontab -e
# Añade: 0 2 * * * /opt/backup-n8n.sh >> /var/log/n8n-backup.log 2>&1
Cómo restaurar n8n desde un backup
Restaurar base de datos PostgreSQL
# Detener n8n
docker compose stop n8n
# Restaurar
docker compose exec -T postgres psql -U n8n -d n8n < /backups/n8n_20260101.sql
# Arrancar n8n
docker compose start n8n
Restaurar workflows desde JSON
Si solo necesitas restaurar los workflows (sin el historial):
docker compose exec n8n n8n import:workflow --input=/backups/workflows/
Migrar n8n a un nuevo servidor
El proceso de backup y restaurar n8n también sirve para migrar entre servidores:
- Exporta la base de datos y los workflows del servidor origen
- Instala n8n en el servidor destino con la misma
N8N_ENCRYPTION_KEY - Importa la base de datos en el servidor destino
- Verifica que las credenciales funcionan
El punto crítico es usar la misma N8N_ENCRYPTION_KEY. Sin ella, las credenciales no se podrán descifrar en el nuevo servidor.
Conclusión
Tener un sistema de backup y restauración de n8n bien configurado es tan importante como los propios workflows. Combina el backup diario de la base de datos con la exportación periódica de workflows en JSON para tener doble protección. Dedica 30 minutos a configurar el script automático hoy y no tendrás que lamentarte después.


