Cómo hacer un backup de base de datos en Plesk automáticamente
¡Hola! Soy tu técnico de soporte amigable. Hoy vamos a aprender una tarea fundamental para mantener la salud de tu sitio web: cómo hacer un backup automático de tu base de datos en Plesk.
Imagina que tu sitio web es una casa. El contenido (textos, imágenes, configuraciones) son los muebles y decoración. La base de datos (MySQL) es el cerebro que guarda toda la información de tus usuarios, productos, pedidos y más. Si ese cerebro falla, perderías todo. Por eso, tener una copia de seguridad (backup) automática es como tener un seguro de vida para tu web.
En este artículo, te guiaré paso a paso para que configures backups automáticos de tu base de datos en Plesk, sin complicaciones y con explicaciones súper claras. ¡Vamos allá!
¿Por qué es importante un backup automático de la base de datos?
Antes de meternos en la configuración, entendamos por qué esto es tan crucial.
- Protección contra errores humanos: Todos cometemos errores. Un clic equivocado al editar un plugin, un cambio en un archivo de configuración o una consulta SQL mal escrita pueden dañar tu base de datos.
- Defensa contra malware y ataques: Los hackers pueden intentar inyectar código malicioso o borrar tu base de datos. Tener un backup reciente te permite restaurar todo a un estado limpio.
- Actualizaciones seguras: Antes de actualizar WordPress, Joomla, PrestaShop o cualquier CMS, es obligatorio hacer un backup. Si algo sale mal, vuelves atrás en segundos.
- Migraciones sencillas: ¿Cambias de hosting? Un backup de la base de datos es el primer paso para mover tu web sin perder datos.
[INFO] Una base de datos MySQL almacena información dinámica (usuarios, comentarios, pedidos, configuraciones). Los archivos estáticos (imágenes, CSS, JS) se guardan en el sistema de archivos. Idealmente, deberías hacer backup de ambos, pero hoy nos centramos en la base de datos.
Requisitos previos
Antes de empezar, asegúrate de tener:
- Acceso a Plesk: Necesitas las credenciales de administrador o de un usuario con permisos para gestionar bases de datos y programar tareas.
- Una base de datos creada: Si no tienes una, puedes crearla desde
Bases de datos>Añadir base de datos. - Espacio en disco suficiente: Los backups ocupan espacio. Asegúrate de que tu plan de hosting tenga espacio libre para almacenar las copias.
Método 1: Backup manual programado (el más fácil para principiantes)
Plesk tiene una herramienta integrada llamada Programador de tareas (cron job) que puede ejecutar scripts de backup de forma periódica. Este es el método más visual y amigable.
Paso 1: Acceder al Programador de tareas
- Inicia sesión en tu panel de Plesk.
- En el menú lateral izquierdo, busca y haz clic en Herramientas y ajustes.
- Dentro de la sección Herramientas de gestión, encontrarás Programador de tareas (o Scheduled Tasks). Haz clic ahí.
Paso 2: Crear una nueva tarea
-
Haz clic en el botón Añadir tarea.
-
Verás un formulario. Estos son los campos que debes rellenar:
-
Nombre de la tarea: Ponle un nombre descriptivo, por ejemplo: "Backup BD automático - Diario".
-
Ejecutar como: Selecciona el usuario del sistema. Si no estás seguro, elige
root(si tienes permisos) o el usuario de tu suscripción. -
Comando: Aquí viene la clave. Vamos a usar el comando
mysqldumppara exportar la base de datos. El comando básico es:mysqldump -u NOMBRE_USUARIO_BD -pCONTRASEÑA_BD NOMBRE_BD > /ruta/a/backup/nombre_del_backup.sqlExplicación del comando:
mysqldump: La herramienta de línea de comandos para hacer backups de MySQL.-u NOMBRE_USUARIO_BD: El usuario de tu base de datos (lo encuentras enBases de datos> haz clic en tu BD).-pCONTRASEÑA_BD: La contraseña de ese usuario. Importante: No debe haber espacio entre-py la contraseña.NOMBRE_BD: El nombre exacto de tu base de datos.>: Redirige la salida a un archivo./ruta/a/backup/: La carpeta donde guardarás el backup. Por ejemplo:/var/www/vhosts/tudominio.com/backups/.nombre_del_backup.sql: El nombre del archivo. Puedes incluir la fecha con$(date +%Y%m%d)para que sea único.
Ejemplo real:
mysqldump -u mi_usuario -pMiClave123 mi_base_datos > /var/www/vhosts/miweb.com/backups/backup_$(date +%Y%m%d_%H%M%S).sql -
Programación: Define cuándo se ejecutará. Puedes elegir:
- Cada día a las 3:00 AM (recomendado para sitios con poco tráfico).
- Cada semana los lunes a las 2:00 AM.
- Cada hora (solo si tu sitio se actualiza constantemente).
-
Activar: Marca la casilla Activar para que la tarea empiece a funcionar.
-
-
Haz clic en Aceptar.
[TIP] Para mayor seguridad, comprime el backup con gzip. Solo añade
| gzipal final del comando y cambia la extensión a.sql.gz. Ejemplo:
mysqldump -u usuario -pclave bd | gzip > /ruta/backup_$(date +%Y%m%d).sql.gz
Paso 3: Verificar que se ejecuta correctamente
- Vuelve al Programador de tareas.
- Verás tu tarea listada. Puedes hacer clic en el icono de ejecutar ahora (un triángulo) para probarla manualmente.
- Después de unos segundos, revisa la carpeta de backups que especificaste. Si ves el archivo
.sql, ¡felicidades! Ya tienes tu backup automático.
Método 2: Usar la herramienta de Backup de Plesk (para toda la suscripción)
Plesk también ofrece una herramienta de backup integrada que puede incluir bases de datos. Es ideal si quieres hacer una copia completa de tu sitio (archivos + bases de datos + configuraciones de correo).
Paso 1: Ir a la herramienta de Backup
- En el menú lateral, ve a Sitios web y dominios.
- Selecciona el dominio que quieres respaldar.
- Haz clic en Backup Manager (o Administrador de copias de seguridad).
Paso 2: Configurar un backup programado
- Dentro de Backup Manager, busca la pestaña Programación (o Scheduled Backup).
- Haz clic en Añadir programación.
- Configura:
- ¿Qué respaldar? Marca Base de datos (y también Archivos si quieres un backup completo).
- ¿Dónde guardarlo? Puedes elegir Almacenamiento local (en el servidor) o Repositorio FTP (otro servidor, más seguro).
- Frecuencia: Diaria, semanal, mensual.
- Número de copias a mantener: Por ejemplo, 7 backups diarios. Así no se llena el disco.
- Haz clic en Aceptar.
[WARNING] Los backups locales consumen espacio en tu plan de hosting. Si tienes poco espacio, configura un repositorio FTP externo (como Google Drive, Dropbox o un servidor FTP propio) para almacenar las copias.
Método 3: Script avanzado con notificaciones (para usuarios más técnicos)
Si quieres un control total, puedes crear un script personalizado y ejecutarlo desde el Programador de tareas. Este script puede enviarte un correo cuando el backup se complete o falle.
Ejemplo de script
-
Crea un archivo llamado
backup_bd.shen tu servidor (por ejemplo, en/root/scripts/). -
Pega este contenido:
#!/bin/bash # Configuración DB_USER="tu_usuario" DB_PASS="tu_contraseña" DB_NAME="tu_base_datos" BACKUP_DIR="/var/www/vhosts/tudominio.com/backups" EMAIL="tu@email.com" # Crear directorio si no existe mkdir -p $BACKUP_DIR # Nombre del archivo con fecha FILENAME="backup_$DB_NAME_$(date +%Y%m%d_%H%M%S).sql.gz" # Realizar el backup mysqldump -u $DB_USER -p$DB_PASS $DB_NAME | gzip > $BACKUP_DIR/$FILENAME # Verificar si se ejecutó correctamente if [ $? -eq 0 ]; then echo "Backup de $DB_NAME completado: $FILENAME" | mail -s "Backup exitoso" $EMAIL else echo "Error al hacer backup de $DB_NAME" | mail -s "¡ALERTA! Backup fallido" $EMAIL fi # Eliminar backups antiguos (más de 7 días) find $BACKUP_DIR -name "*.sql.gz" -mtime +7 -delete -
Dale permisos de ejecución:
chmod +x /root/scripts/backup_bd.sh -
En el Programador de tareas de Plesk, en el campo Comando, escribe:
/root/scripts/backup_bd.sh -
Programa la ejecución (por ejemplo, cada día a las 4:00 AM).
[INFO] Este script también elimina automáticamente los backups de más de 7 días, evitando que el disco se llene. Puedes cambiar el número
+7por el que prefieras.
Preguntas Frecuentes (FAQ)
1. ¿Puedo restaurar un backup de base de datos desde Plesk?
Sí. Ve a Bases de datos > selecciona tu BD > haz clic en Importar Dump. Sube el archivo .sql y listo. También puedes usar phpMyAdmin (dentro de Plesk) para importar.
2. ¿Qué pasa si mi base de datos es muy grande (más de 1 GB)?
Para bases de datos grandes, el comando mysqldump puede fallar por tiempo de ejecución. En ese caso, te recomiendo:
- Usar la herramienta de backup de Plesk (que está optimizada).
- Dividir el backup en partes o usar
mysqlhotcopy(más avanzado). - Aumentar el límite de tiempo de ejecución en el Programador de tareas (si es posible).
3. ¿Los backups automáticos afectan el rendimiento de mi web?
Un backup de base de datos puede consumir recursos (CPU y RAM) durante su ejecución. Por eso se recomienda programarlos en horas de bajo tráfico (madrugada). Si tu web es muy visitada, elige una frecuencia semanal en lugar de diaria.
4. ¿Dónde se almacenan los backups por defecto en Plesk?
Si usas la herramienta de Backup de Plesk, los guarda en /var/lib/psa/dumps/. Si usas el Programador de tareas, tú eliges la ruta. No los guardes en carpetas públicas (como httpdocs) para que no sean accesibles desde internet.
5. ¿Puedo hacer backup de varias bases de datos a la vez?
Sí, con un script. Por ejemplo, puedes listar todas las bases de datos con mysql -u root -p -e "SHOW DATABASES;" y luego hacer un bucle para respaldar cada una.
6. ¿Qué es Syspanel y cómo se relaciona con esto?
Syspanel (antes conocido como HestiaCP) es otro panel de control de hosting. Aunque no es Plesk, los conceptos son similares. En Syspanel, el puerto de acceso es el 2106 y también tiene un Programador de tareas para ejecutar scripts de backup. Si usas Syspanel, puedes aplicar los mismos comandos de mysqldump que vimos aquí.
7. ¿Debo mantener más de una copia de seguridad?
¡Sí! La regla de oro es 3-2-1: 3 copias de tus datos, en 2 tipos diferentes de soporte (local y externo), con 1 copia fuera del sitio (por ejemplo, en la nube). Así, si el servidor se quema, tienes otra copia en otro lugar.
Conclusión
Hacer un backup automático de tu base de datos en Plesk no es complicado. Con unos pocos clics en el Programador de tareas o usando la herramienta de Backup integrada, puedes dormir tranquilo sabiendo que tu información está a salvo.
Recuerda:
- Programa backups en horas de bajo tráfico.
- Verifica periódicamente que los backups se están generando correctamente.
- No te olvides de los archivos del sitio (tema, plugins, imágenes). Un backup completo incluye base de datos + archivos.
Si tienes alguna duda, no dudes en contactar con tu proveedor de hosting o conmigo. ¡Estoy aquí para ayudarte!
