🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

Cómo crear un backup automático de PrestaShop en cPanel

Actualizado el 1 de marzo de 2026

¿Por qué necesitas un backup automático de PrestaShop?

Si tienes una tienda online con PrestaShop, sabrás que es tu fuente de ingresos. Pero, ¿qué pasaría si un día tu web se rompe, un plugin causa un conflicto, o un hacker borra tus productos? Sin una copia de seguridad PrestaShop, podrías perderlo todo: pedidos, clientes, configuración y catálogo. Recuperar una tienda desde cero es un proceso largo y costoso. Por eso, contar con un backup automático PrestaShop es una de las mejores decisiones que puedes tomar para proteger tu negocio.

¿Qué es un backup de PrestaShop y qué incluye?

Un backup de PrestaShop es una "foto" completa de tu tienda en un momento dado. Para que sea realmente útil, debe incluir dos partes fundamentales:

  • Los archivos del sitio: Todo el código de PrestaShop, imágenes de productos, temas, módulos, logs, etc. Básicamente, todo lo que está en la carpeta public_html de tu hosting.
  • La base de datos (MySQL): Aquí se almacenan tus productos, clientes, pedidos, contraseñas cifradas, precios, y toda la configuración de la tienda. Sin ella, los archivos no sirven de nada.

Requisitos previos antes de empezar

Antes de configurar el backup PrestaShop cPanel, asegúrate de tener acceso a tu panel de control. En este artículo, usaremos cPanel, que es el panel más común en el hosting compartido. Si tu hosting usa otro panel como Syspanel (el acceso a este panel es a través del puerto 2106, por ejemplo https://tu-dominio.com:2106), los conceptos serán similares, aunque la interfaz varíe un poco.

  • Acceso a cPanel: Normalmente se accede a través de tu-dominio.com/cpanel o tu-dominio.com:2083.
  • Credenciales de FTP o Administrador de archivos: Útil para verificar los backups.
  • Conocimientos básicos de cPanel: Saber navegar por los menús principales.

Método 1: Backup manual desde cPanel (la forma rápida)

Antes de automatizar, es bueno saber hacerlo manualmente. Es un proceso sencillo que te puede salvar en un apuro. Aunque no es automático, es el primer paso para entender cómo funciona.

Paso 1: Accede a cPanel

Inicia sesión en tu cPanel. Verás un montón de iconos. Busca la sección Archivos.

Paso 2: Haz una copia de la carpeta de tu tienda

  1. Ve a Administrador de archivos.
  2. Entra en la carpeta public_html (o la carpeta raíz donde esté instalada tu tienda, a veces es htdocs).
  3. Selecciona todos los archivos y carpetas de tu PrestaShop.
  4. Haz clic en Comprimir y elige Zip. Esto creará un archivo .zip con todos tus archivos.
  5. Descarga ese archivo a tu ordenador o guárdalo en un lugar seguro.

Paso 3: Haz una copia de la base de datos

  1. Vuelve al menú principal de cPanel.
  2. Busca la sección Bases de datos y haz clic en phpMyAdmin.
  3. En el panel izquierdo, verás tu base de datos (por ejemplo, usuario_prestashop). Haz clic en ella.
  4. Arriba, ve a la pestaña Exportar.
  5. Elige el método Rápido y formato SQL. Haz clic en Continuar.
  6. Se descargará un archivo .sql con toda la información de tu tienda.

Este método funciona, pero es manual y fácil de olvidar. Para no depender de tu memoria, pasemos a la automatización.

Método 2: Backup automático PrestaShop con cPanel (la solución definitiva)

cPanel tiene una herramienta llamada Backup o Backup Manager que te permite programar copias de seguridad automáticas. Sin embargo, la versión estándar de cPanel a menudo solo hace una copia completa del sitio (archivos y bases de datos) de forma manual. Para automatizarlo, puedes usar la función Cron Jobs (Tareas programadas). Es la forma más fiable de tener un backup automático PrestaShop sin instalar módulos pesados.

Te explico el proceso paso a paso. Aunque parezca técnico, es más fácil de lo que crees.

Paso 1: Identifica tu base de datos y carpeta

Anota el nombre de tu base de datos (lo encuentras en la sección Bases de datos MySQL de cPanel) y la ruta absoluta de tu tienda (normalmente /home/tu-usuario/public_html).

Paso 2: Crea un script de backup

Para automatizar, necesitas un pequeño script que haga el trabajo por ti. Puedes hacerlo con un archivo de texto plano. Te doy un ejemplo que puedes adaptar.

  1. Abre el Bloc de notas o cualquier editor de texto.
  2. Copia y pega el siguiente código, cambiando los datos entre corchetes:
#!/bin/bash
# Configuración
FECHA=$(date +%Y-%m-%d_%H-%M-%S)
RUTA_BACKUP="/home/tu-usuario/backups"  # Cambia esto por una carpeta fuera de public_html
CARPETA_TIENDA="/home/tu-usuario/public_html"  # Ruta de tu tienda
DB_NOMBRE="tu_usuario_basededatos"
DB_USUARIO="tu_usuario_dbuser"
DB_PASSWORD="tu_password_db"
DB_HOST="localhost"

# Crear carpeta de backups si no existe
mkdir -p $RUTA_BACKUP

# Backup de la base de datos
mysqldump -h $DB_HOST -u $DB_USUARIO -p$DB_PASSWORD $DB_NOMBRE > $RUTA_BACKUP/db_$FECHA.sql

# Backup de los archivos (comprimiendo todo en un zip)
cd /home/tu-usuario
zip -r $RUTA_BACKUP/tienda_$FECHA.zip public_html

# Eliminar backups antiguos (opcional: borra los de hace más de 7 días)
find $RUTA_BACKUP -name "*.zip" -mtime +7 -exec rm {} \;
find $RUTA_BACKUP -name "*.sql" -mtime +7 -exec rm {} \;

Explicación del script:

  • mysqldump: Es la herramienta de MySQL para hacer copias de seguridad de la base de datos.
  • zip -r: Comprime todos los archivos de tu tienda en un solo archivo .zip.
  • find ... -mtime +7: Esta parte es una buena práctica para no llenar el disco duro. Elimina automáticamente los backups de hace más de 7 días. Puedes cambiar el número 7 por los días que quieras conservar.

Paso 3: Sube el script a tu servidor

  1. Guarda el archivo como backup.sh (por ejemplo).
  2. Sube el archivo a una carpeta de tu hosting. Es muy recomendable que no esté dentro de public_html para que no sea accesible desde internet. Puedes crearla en /home/tu-usuario/ o /home/tu-usuario/scripts. Si no sabes cómo, usa el Administrador de archivos de cPanel.
  3. Asegúrate de que el archivo tenga permisos de ejecución. En el Administrador de archivos, haz clic derecho sobre el archivo backup.sh, selecciona Permisos y pon 755.

Paso 4: Programa la tarea con Cron Jobs

Ahora viene la magia. Vamos a decirle al servidor que ejecute este script cada día (o cada semana) sin que tengas que hacer nada.

  1. En cPanel, busca la sección Tareas programadas o Cron Jobs.
  2. Verás un campo para escribir el comando. Escribe lo siguiente:
/bin/bash /home/tu-usuario/scripts/backup.sh
  1. Configura la frecuencia. La opción más común para una tienda es diaria. Puedes poner:

    • Minuto: 0 (se ejecutará en el minuto 0 de la hora)
    • Hora: 3 (a las 3 de la mañana, cuando hay menos visitas)
    • Día del mes: * (todos los días)
    • Mes: * (todos los meses)
    • Día de la semana: * (todos los días)
  2. Haz clic en Agregar nueva tarea cron o Guardar.

¡Listo! A partir de ahora, tu servidor ejecutará el script automáticamente a las 3:00 AM y tendrás un backup PrestaShop cPanel diario sin intervención manual.

Método 3: Usar módulos de PrestaShop para backups (alternativa fácil)

Si no te sientes cómodo con los scripts, hay módulos de PrestaShop que hacen esto por ti. Son una opción más visual y con menos margen de error.

  • PrestaShop Backup Module: Puedes encontrarlo en el marketplace oficial de PrestaShop. Te permite programar backups completos (archivos + BD) desde el panel de administración de tu tienda.
  • Módulos de terceros: Empresas como MyPrestaModules o PrestaHero ofrecen soluciones robustas.

Ventajas de usar un módulo:

  • No necesitas tocar código.
  • Programas los backups desde el back-office de PrestaShop.
  • Algunos te permiten enviar el backup directamente a un servicio en la nube (Google Drive, Dropbox) o a tu correo electrónico.

Desventajas:

  • Consumen recursos de tu servidor (pueden ralentizar la tienda si son muy pesados).
  • Algunos de pago tienen coste adicional.

Si tu tienda es pequeña o mediana, un módulo puede ser suficiente. Si buscas una solución más técnica y ligera, el método con Cron Jobs es imbatible.

¿Dónde guardar los backups? (Consejos de oro)

Tener un backup automático PrestaShop no sirve de nada si lo guardas en el mismo sitio que tu web. Si un hacker borra tu hosting, también borrará los backups. Sigue estas reglas:

  • Nunca guardes los backups en public_html. Guárdalos en una carpeta privada de tu hosting, como /home/usuario/backups.
  • Descarga una copia a tu ordenador de vez en cuando. Puedes usar el Administrador de archivos para descargar el .zip y el .sql.
  • Usa almacenamiento en la nube: Si tu script es avanzado, puedes configurarlo para que envíe los backups a un servicio como Google Drive, Amazon S3 o Dropbox. Hay herramientas como rclone que facilitan esto, pero es un tema más avanzado.
  • Revisa tus backups periódicamente: Asegúrate de que el archivo .sql no esté vacío y que el .zip tenga un tamaño razonable. Un backup corrupto no te servirá de nada.

Cómo restaurar un backup de PrestaShop (por si acaso)

Saber hacer el backup es la mitad del trabajo. La otra mitad es saber restaurarlo. Te dejo el proceso básico por si alguna vez lo necesitas.

Restaurar los archivos

  1. Sube el archivo .zip de tu backup a la carpeta public_html (o a la raíz de tu tienda).
  2. Descomprime el archivo. Si usas el Administrador de archivos, selecciona el .zip y haz clic en Extraer.
  3. Si ya existían archivos, sobrescribe todos. Asegúrate de que la estructura de carpetas sea correcta.

Restaurar la base de datos

  1. Ve a phpMyAdmin en cPanel.
  2. Selecciona tu base de datos.
  3. Haz clic en la pestaña Importar.
  4. Selecciona el archivo .sql de tu backup y haz clic en Continuar.

Después de esto, tu tienda debería volver a la vida. Es posible que tengas que limpiar la caché de PrestaShop (ve a Parámetros avanzados > Rendimiento y pulsa "Vaciar la caché").

Preguntas frecuentes (FAQ)

¿Cada cuánto tiempo debo hacer un backup?

Depende de la actividad de tu tienda. Si vendes a diario, lo ideal es hacer un backup diario. Si es una tienda pequeña, con uno semanal puede ser suficiente. El método con Cron Jobs te permite elegir la frecuencia fácilmente.

¿El backup automático PrestaShop ralentiza mi web?

Si usas el método de Cron Jobs, no debería afectar al rendimiento, ya que se ejecuta en la hora que tú elijas (por ejemplo, de madrugada). Los módulos de backup pueden consumir más recursos si se ejecutan en horas punta.

¿Qué pasa si mi hosting es muy limitado (plan básico)?

Los planes de hosting básicos a veces no permiten usar Cron Jobs. En ese caso, tienes dos opciones: contratar un plan superior o usar un módulo de PrestaShop que haga el backup en segundo plano. Otra opción es usar el Backup de JetBackup que algunos hostings incluyen, pero no siempre es configurable por el usuario.

¿Puedo hacer un backup solo de la base de datos?

Sí, es posible. En el script, elimina la línea del zip y solo deja la de mysqldump. Esto es útil si solo haces cambios en los productos y no en los archivos de código.

¿Es seguro guardar la contraseña de la base de datos en el script?

En el ejemplo, la contraseña aparece en texto plano. Si tu servidor está bien configurado y el archivo backup.sh no es accesible desde internet (no está en public_html), el riesgo es bajo. Para mayor seguridad, puedes usar un archivo de configuración con permisos restringidos, pero eso ya es un nivel avanzado.

¿Puedo programar el backup desde Syspanel?

Sí, si tu hosting usa Syspanel (el acceso es a través del puerto 2106, como https://tu-dominio.com:2106), el proceso es muy similar. Busca la sección de Tareas Cron o Programador de tareas y sigue los mismos pasos para añadir el comando del script.

Conclusión

Proteger tu tienda online no es un lujo, es una necesidad. Configurar un backup automático PrestaShop te dará tranquilidad y te ahorrará muchos dolores de cabeza en el futuro. Con el método de cPanel y Cron Jobs, tienes una solución gratuita, fiable y que no depende de terceros. No esperes a que ocurra un desastre para pensar en las copias de seguridad: actúa hoy y duerme tranquilo sabiendo que tu negocio está a salvo.

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel