Cómo migrar una base de datos de PrestaShop a otro servidor (Plesk)
Antes de Empezar: Prepara tu Ecommerce para el Cambio de Servidor
Migrar una tienda online es como mudar una casa llena de muebles delicados: requiere planificación, las herramientas adecuadas y mucha paciencia. En el mundo del ecommerce, esa "casa" es tu servidor y los "muebles" son tus archivos y, sobre todo, tu base de datos. Si estás leyendo esto, probablemente ya has decidido dar el salto a un nuevo hosting con Plesk. ¡Excelente decisión! Pero antes de lanzarte, es crucial entender que migrar la base de datos de PrestaShop es el corazón de todo el proceso. Un error aquí puede significar perder pedidos, clientes o, en el peor de los casos, toda tu tienda.
No te preocupes, no necesitas ser un gurú de la programación. Esta guía está pensada para que, paso a paso y con un lenguaje claro, puedas realizar la migración de tu base de datos de PrestaShop a tu nuevo servidor con Plesk sin despeinarte. Vamos a desglosar el proceso en dos grandes fases: la exportación (desde tu servidor antiguo) y la importación (en tu nuevo Plesk). Además, te daré trucos para evitar los errores más comunes que suelen aparecer en el camino.
Fase 1: La Preparación del Terreno en tu Servidor Actual
Antes de tocar nada, necesitas asegurarte de que tienes un terreno firme. Esto significa dos cosas: una copia de seguridad limpia y el acceso a las herramientas correctas.
1.1. Identifica tu Versión de PrestaShop y los Datos de Conexión
Primero, accede a tu panel de administración de PrestaShop (normalmente en /admin o una URL personalizada). Anota la versión exacta que estás usando (esto es útil si luego necesitas ayuda específica). Después, necesitarás los datos de acceso a tu base de datos actual. Normalmente los encuentras en el archivo app/config/parameters.php en la raíz de tu instalación de PrestaShop.
Busca las líneas que dicen 'database_host', 'database_name', 'database_user' y 'database_password'. Guarda estos datos en un lugar seguro, los necesitarás para exportar, pero también para configurar tu nueva tienda.
1.2. Elige tu Herramienta de Exportación: PhpMyAdmin vs. Comandos SSH
Tienes dos opciones principales para exportar tu base de datos. Si tu hosting antiguo usa cPanel o Plesk, es muy probable que tengas acceso a PhpMyAdmin, que es una herramienta web gráfica. Si tu servidor es más "de purista" y tienes acceso por SSH, puedes usar la línea de comandos. Para esta guía, nos centraremos en PhpMyAdmin, porque es la opción más visual y fácil para principiantes, aunque te mencionaré la alternativa por si acaso.
Fase 2: Exportando tu Base de Datos de PrestaShop (Paso a Paso)
Este es el momento de la verdad. Vamos a sacar una fotografía exacta y completa de tu base de datos para poder trasladarla.
2.1. Accede a PhpMyAdmin en tu Servidor Antiguo
- Ve al panel de control de tu hosting actual (cPanel, Plesk, etc.).
- Busca el icono de PhpMyAdmin (suele estar en la sección de "Bases de Datos").
- Haz clic en tu base de datos de PrestaShop (el nombre que anotaste antes).
2.2. Configura la Exportación Correctamente (¡El Paso Clave!)
Una vez dentro de PhpMyAdmin, sigue estos pasos:
- En el menú superior, haz clic en la pestaña "Exportar".
- Verás dos métodos: "Rápido" y "Personalizado". Selecciona "Personalizado". Esto es fundamental para evitar errores de codificación.
- Asegúrate de que en "Formato" esté seleccionado "SQL".
- Desplázate hacia abajo hasta la sección "Opciones específicas del formato".
- Marca la casilla "Incluir CREATE DATABASE" (esto creará la base de datos en el nuevo servidor si no existe, aunque con Plesk normalmente la creas tú primero).
- En el desplegable junto a "Funciones del sistema", selecciona "IF NOT EXISTS" o "DROP TABLE IF EXISTS" para sobrescribir tablas existentes sin errores.
- IMPORTANTE: En "Modo de compatibilidad", elige "NONE" o "MAXDB", pero si tu PrestaShop es antiguo, a veces "NONE" da problemas. Si falla, repite la exportación con "MYSQL40". ¡Pero no te preocupes, lo veremos en los errores comunes!
- En la sección de "Datos de creación de tablas" y "Datos de inserción de datos", deja las opciones por defecto.
- Haz clic en el botón "Continuar" o "Exportar" en la parte inferior.
Esto descargará un archivo .sql en tu ordenador. ¡Felicidades! Ya tienes tu copia de seguridad. Guárdala en un lugar seguro, pero no la pierdas de vista, la necesitarás en un momento.
[WARNING]: No uses el método "Rápido" de exportación. A menudo omite opciones críticas como la creación de la base de datos o los comandos DROP, lo que puede provocar que la importación en Plesk falle a mitad de camino.
2.3. Alternativa por SSH (Para los más atrevidos)
Si tu hosting antiguo te da acceso SSH, puedes ejecutar este comando para exportar la base de datos de forma más rápida y fiable:
mysqldump -u USUARIO -p NOMBRE_BASE_DATOS > /ruta/donde/guardar/backup.sql
Te pedirá la contraseña y listo. Este método es muy robusto y evita los límites de tiempo de ejecución de PhpMyAdmin en bases de datos muy grandes.
Fase 3: La Importación en tu Nuevo Servidor con Plesk
Ahora viene la parte emocionante: dar vida a tu base de datos en el nuevo hogar. Plesk es un panel muy intuitivo, así que no te abrumes.
3.1. Crea una Nueva Base de Datos y un Usuario en Plesk
- Accede a tu panel de Plesk.
- En el menú lateral, busca "Bases de datos" (o "Sitios web y dominios" y luego "Bases de datos").
- Haz clic en "Agregar base de datos".
- Elige un nombre para tu base de datos (puede ser el mismo que tenías antes o uno nuevo, pero apunta el nombre exacto).
- En el campo "Servidor de base de datos", selecciona "MySQL".
- En "Tipo de base de datos", elige "MySQL" (o "InnoDB" si te lo pide, pero MySQL es lo estándar).
- Crea un usuario para esta base de datos y una contraseña segura. Anota también estos datos. Este usuario es el que usarás en tu archivo
parameters.phpde PrestaShop más tarde. - Haz clic en "Aceptar" o "OK".
[TIP]: Es una buena práctica crear la base de datos con el mismo nombre que tenías en el servidor antiguo para evitar tener que editar el archivo parameters.php de PrestaShop. Si lo cambias, tendrás que actualizarlo manualmente.
3.2. Importa tu Archivo .sql desde Plesk
- En la misma sección de "Bases de datos", haz clic en el nombre de tu nueva base de datos que acabas de crear.
- Busca la opción que dice "Importar" (o "Importar Dump").
- Verás un botón para "Subir archivo". Haz clic en él y selecciona el archivo
.sqlque exportaste antes. - Plesk te mostrará un resumen del archivo. Haz clic en "Aceptar" o "Importar".
Plesk procesará el archivo. Dependiendo del tamaño de tu base de datos, esto puede tardar desde unos segundos hasta varios minutos. No cierres la pestaña del navegador hasta que veas un mensaje de éxito.
[INFO]: Si tu archivo .sql es muy grande (más de 100 MB), Plesk puede tener problemas de tiempo de espera. En ese caso, te recomiendo subir el archivo a la carpeta httpdocs de tu dominio mediante FTP y luego, desde Plesk, en la opción de importar, indicar la ruta del archivo en lugar de subirlo directamente. Por ejemplo, httpdocs/mi_backup.sql.
3.3. Verifica la Importación
Para asegurarte de que todo ha ido bien, haz lo siguiente:
- En Plesk, ve a tu base de datos.
- Busca la opción "PhpMyAdmin" (Plesk tiene un acceso directo a esta herramienta).
- En el panel izquierdo, verás una lista de tablas. Deberías ver todas las tablas de PrestaShop (ps_address, ps_cart, ps_orders, etc.).
- Haz clic en una tabla importante como
ps_ordersy selecciona la pestaña "Examinar" para ver si hay datos. Si ves tus pedidos, ¡la importación ha sido un éxito!
Fase 4: Configurar PrestaShop para Usar la Nueva Base de Datos
Ahora que tu base de datos está en el nuevo servidor, es hora de conectar tu tienda con ella.
4.1. Editar el Archivo de Configuración parameters.php
Este es el archivo que le dice a PrestaShop dónde y cómo conectarse a la base de datos. Está en la raíz de tu instalación, en la ruta app/config/parameters.php.
- Conéctate a tu nuevo servidor por FTP (con FileZilla, por ejemplo).
- Navega hasta
app/config/. - Descarga el archivo
parameters.phpa tu ordenador. - Ábrelo con un editor de texto plano (como Bloc de Notas o Sublime Text).
- Busca las líneas que empiezan por
'database_host','database_name','database_user'y'database_password'. - Sustitúyelas por los datos de la nueva base de datos que creaste en Plesk (el nombre, el usuario y la contraseña que anotaste).
- Guarda el archivo y súbelo de nuevo a tu servidor, sobrescribiendo el antiguo.
[WARNING]: Si tu nuevo servidor tiene una IP diferente al antiguo, también deberás cambiar la línea 'database_host' para que apunte a la nueva IP. A menudo, en Plesk, si la base de datos está en el mismo servidor, puedes poner 'localhost' o '127.0.0.1', pero si es un servidor remoto, necesitarás la IP exacta.
4.2. Actualizar la Configuración en el Panel de Administración
A veces, PrestaShop guarda la URL de la tienda en la base de datos. Para evitar problemas, entra a tu panel de administración de PrestaShop (una vez que hayas subido todos los archivos, no solo la base de datos) y ve a Parámetros Avanzados > Rendimiento. Haz clic en "Vaciar la caché". Esto forzará a PrestaShop a releer la configuración.
Errores Comunes y Cómo Solucionarlos (FAQ)
Aquí tienes una lista de problemas típicos y sus soluciones rápidas.
Error: "Error de conexión a la base de datos" al abrir mi tienda
- Causa: Los datos en
parameters.phpson incorrectos. - Solución: Revisa el nombre de la base de datos, el usuario y la contraseña en Plesk. Asegúrate de que el usuario tiene todos los privilegios sobre la base de datos (puedes verlo en Plesk en la sección de usuarios de la base de datos).
Error: "Tabla 'ps_xxx' no existe" durante la importación
- Causa: La exportación se hizo con el método "Rápido" o con una configuración incompleta.
- Solución: Re-exporta la base de datos desde PhpMyAdmin usando el método "Personalizado" y asegurándote de marcar la casilla "Incluir CREATE DATABASE" y seleccionar "DROP TABLE IF EXISTS" en las opciones de formato.
Error: Caracteres extraños (ñ, é) en lugar de letras acentuadas
- Causa: Problema de codificación de caracteres.
- Solución: En PhpMyAdmin, al exportar, en la sección "Opciones específicas del formato", busca la opción "Codificación de archivos" y selecciona "utf-8". Al importar en Plesk, asegúrate de que la base de datos esté creada con el cotejamiento (collation)
utf8_general_cioutf8mb4_general_ci(para PrestaShop 1.7+).
El tiempo de importación se agota (Error 500 o página en blanco)
- Causa: Archivo
.sqldemasiado grande para el límite de tiempo de Plesk. - Solución: Usa el método de importación por ruta de archivo que mencioné antes (subir el archivo a
httpdocsy luego importarlo desde Plesk). También puedes intentar dividir el archivo.sqlen partes más pequeñas usando herramientas como BigDump.
Conclusión: Tu Tienda en su Nuevo Hogar
¡Enhorabuena! Has migrado tu base de datos de PrestaShop a tu nuevo servidor con Plesk. Este es un gran paso, pero recuerda que la migración completa también incluye mover los archivos de tu tienda (las carpetas admin, modules, themes, etc.) y apuntar tu dominio al nuevo servidor. La base de datos es la parte más delicada, y ya la has dominado.
Te recomiendo que, después de la migración, hagas una prueba exhaustiva: navega por tu tienda, realiza un pedido de prueba, revisa el panel de administración y comprueba que los emails se envían correctamente. Si todo funciona, ¡ya estás operativo en tu nuevo hosting!
[TIP]: Si en algún momento te sientes perdido, no dudes en contactar con el soporte técnico de tu nuevo proveedor de hosting. Ellos conocen Plesk a la perfección y pueden ayudarte a resolver cualquier incidencia. También puedes buscar en foros especializados de PrestaShop, donde la comunidad es muy activa y servicial.
Recuerda: la paciencia y la meticulosidad son tus mejores aliadas en este proceso. ¡Tu ecommerce te lo agradecerá con un rendimiento excelente en su nuevo servidor!
