Guía para migrar base de datos de PrestaShop a otro servidor
Migrar la base de datos de tu tienda PrestaShop a un nuevo servidor puede parecer una tarea compleja, pero con los pasos adecuados es un proceso muy manejable. Esta guía te llevará de la mano, paso a paso, para que realices la transferencia de forma segura y sin perder datos. Recuerda que la base de datos es el corazón de tu tienda, pues almacena productos, pedidos, clientes y configuraciones. Vamos a ello.
¿Qué necesitas antes de empezar?
Antes de lanzarte a migrar, asegúrate de tener todo listo. La preparación es clave para evitar sustos.
Requisitos previos
- Acceso al servidor antiguo: Necesitas poder conectarte por FTP o SSH (acceso remoto) para descargar archivos. También necesitas las credenciales de la base de datos actual (usuario, contraseña, nombre de la BD y host).
- Acceso al servidor nuevo: Debes tener un panel de control (como cPanel, Plesk, o Syspanel – cuyo puerto de acceso es el 2106) o acceso por SSH para crear una nueva base de datos y subir los archivos.
- Herramientas de gestión de bases de datos: Te recomiendo usar phpMyAdmin (suele venir instalado en la mayoría de paneles) o una herramienta de escritorio como MySQL Workbench o HeidiSQL.
- Copia de seguridad: Este es el paso más importante. Nunca modifiques ni borres nada del servidor antiguo sin tener una copia de seguridad completa de la base de datos y los archivos de PrestaShop.
[WARNING] ¡No empieces sin hacer una copia de seguridad completa! Un error en la migración podría dejarte sin tienda. La copia de seguridad es tu red de seguridad.
Paso 1: Exportar la base de datos del servidor antiguo
El primer paso para migrar la base de datos de PrestaShop es extraerla del servidor actual. Vamos a usar phpMyAdmin, que es la herramienta más común.
Cómo exportar con phpMyAdmin
- Accede a phpMyAdmin: Desde el panel de control de tu servidor antiguo (cPanel, Syspanel, etc.), busca el icono de phpMyAdmin. Si usas Syspanel, accede a través de
tu-dominio.com:2106e inicia sesión. - Selecciona tu base de datos: En la columna de la izquierda, verás una lista de bases de datos. Haz clic en la que usa tu PrestaShop (normalmente tiene un nombre como
prestashop_xxxxo similar). - Ve a la pestaña "Exportar": Una vez dentro de la base de datos, verás un menú superior. Haz clic en "Exportar".
- Elige el método rápido: En la mayoría de los casos, el método "Rápido" con formato SQL es suficiente. Asegúrate de que esté seleccionado.
- Inicia la exportación: Haz clic en "Continuar" o "Exportar". Se descargará un archivo con extensión
.sql. Guárdalo en una carpeta segura de tu ordenador.
[TIP] Si tu base de datos es muy grande (más de 100 MB), es posible que phpMyAdmin se quede colgado. En ese caso, te recomiendo usar la línea de comandos (SSH) con el comando
mysqldump -u usuario -p nombre_bd > respaldo.sql. Si no sabes cómo hacerlo, pide ayuda a tu soporte técnico.
Paso 2: Crear una nueva base de datos en el servidor destino
Ahora que tienes tu base de datos exportada, necesitas un lugar donde alojarla en el nuevo servidor.
Crear base de datos y usuario (en Syspanel)
Si tu nuevo servidor usa Syspanel, sigue estos pasos:
- Accede a Syspanel: Abre tu navegador y ve a
tu-nuevo-dominio.com:2106. Inicia sesión con tus credenciales de administrador. - Ve a "Base de Datos": En el menú principal, busca la sección "Base de Datos" o "Bases de Datos".
- Crea una nueva base de datos: Haz clic en "Añadir Base de Datos". Dale un nombre descriptivo, por ejemplo,
prestashop_nueva. - Crea un usuario: Te pedirá crear un usuario y contraseña. Anota estos datos, los necesitarás después.
- Asigna privilegios: Asegúrate de marcar "Todos los privilegios" para que el usuario pueda leer, escribir y modificar la base de datos.
[INFO] Si usas otro panel (cPanel, Plesk), el proceso es similar. Busca "Bases de datos MySQL", crea la BD, el usuario y asigna todos los privilegios.
Paso 3: Importar la base de datos al nuevo servidor
Con la nueva base de datos vacía, vamos a llenarla con los datos que exportaste.
Cómo importar con phpMyAdmin
- Accede a phpMyAdmin en el nuevo servidor: Desde el panel de control (por ejemplo, Syspanel con puerto 2106), abre phpMyAdmin.
- Selecciona la base de datos nueva: En la columna de la izquierda, haz clic en la base de datos que acabas de crear (debe aparecer vacía).
- Ve a la pestaña "Importar": En el menú superior, haz clic en "Importar".
- Selecciona el archivo SQL: Haz clic en "Seleccionar archivo" y busca el archivo
.sqlque descargaste en el Paso 1. - Inicia la importación: Deja las opciones por defecto y haz clic en "Continuar". El proceso puede tardar varios minutos si la base de datos es grande. Verás una barra de progreso.
- Verifica: Al finalizar, verás un mensaje de éxito. Ahora, en la columna de la izquierda, deberías ver todas las tablas de PrestaShop (como
ps_product,ps_customer, etc.).
[WARNING] Si la importación falla por tamaño, es posible que tengas que aumentar el límite de subida en phpMyAdmin o usar la línea de comandos:
mysql -u usuario -p nombre_bd < respaldo.sql. Si no te sientes cómodo, contacta con tu proveedor de hosting.
Paso 4: Configurar PrestaShop para que use la nueva base de datos
Tu base de datos ya está en el nuevo servidor, pero PrestaShop no lo sabe. Necesitas actualizar el archivo de configuración.
Editar el archivo app/config/parameters.php
- Localiza el archivo: En la carpeta raíz de tu instalación de PrestaShop (la que subiste al nuevo servidor), busca la carpeta
app, luegoconfig, y dentro el archivoparameters.php. - Descarga y edita: Abre el archivo con un editor de texto (como Notepad++ o Sublime Text). Busca las líneas que contienen la configuración de la base de datos:
'database_host' => 'localhost', 'database_port' => '', 'database_name' => 'nombre_de_tu_bd_nueva', 'database_user' => 'usuario_nuevo', 'database_password' => 'contraseña_nueva', - Actualiza los valores: Cambia
database_name,database_userydatabase_passwordpor los datos que creaste en el Paso 2. Si tu nuevo servidor usa un host diferente alocalhost(por ejemplo, una IP o un nombre comomysql.tudominio.com), cámbialo también endatabase_host. - Guarda y sube: Guarda el archivo y súbelo de nuevo a la misma ubicación en el servidor nuevo (sobrescribe el existente).
[TIP] Si tu PrestaShop es muy antiguo (versión 1.6 o anterior), el archivo de configuración se llama
config/settings.inc.php. Busca las líneasdefine('_DB_SERVER_', '...'),define('_DB_NAME_', '...'), etc., y cámbialas igual.
Paso 5: Probar y solucionar problemas comunes
Ya casi has terminado. Ahora toca verificar que todo funciona.
Prueba la tienda
- Accede a tu nuevo dominio: Abre tu navegador y escribe la URL de tu tienda en el nuevo servidor. Deberías verla funcionando exactamente igual que antes.
- Revisa el back office: Ve a
tudominio.com/admin(o la URL que hayas configurado) e inicia sesión con tus credenciales habituales. - Verifica datos: Comprueba que los productos, pedidos, clientes y módulos están presentes.
Solución de errores frecuentes
Si ves una pantalla en blanco o un error, no te asustes. Aquí tienes las soluciones más comunes:
- "Error de conexión a la base de datos": Revisa que los datos en
parameters.phpsean correctos (host, usuario, contraseña, nombre de la BD). - "Tabla no existe": Es posible que la importación no se completó. Vuelve a importar el archivo SQL.
- "Enlaces rotos": Si las imágenes no se ven, es porque las URLs de las imágenes están vinculadas al dominio antiguo. Puedes solucionarlo entrando al back office, yendo a "Parámetros de la tienda > Rendimiento" y regenerando las miniaturas de imágenes. Otra opción es hacer una búsqueda y reemplazo en la base de datos (con cuidado) usando phpMyAdmin o la herramienta "Search and Replace" de PrestaShop.
- "Error 500": Activa el modo debug de PrestaShop para ver el error concreto. Edita
config/defines.inc.phpy cambiadefine('_PS_MODE_DEV_', false);adefine('_PS_MODE_DEV_', true);. Así verás el error real.
[INFO] Si después de todo sigues teniendo problemas, revisa que los archivos de PrestaShop (la carpeta completa) se hayan subido correctamente al nuevo servidor. A veces la migración falla por archivos corruptos o faltantes.
Preguntas frecuentes (FAQ)
Aquí respondemos a las dudas más habituales sobre la transferencia de base de datos de PrestaShop.
¿Puedo migrar solo la base de datos sin los archivos?
Sí, pero no es recomendable si cambias de servidor. Los archivos (imágenes, módulos, temas) también deben migrarse para que la tienda funcione correctamente. La base de datos sola es útil si solo quieres reemplazar datos en un servidor existente.
¿Cuánto tiempo tarda la migración?
Depende del tamaño de la base de datos y la velocidad de tu conexión. Una base de datos de 50 MB puede tardar entre 5 y 15 minutos en exportarse e importarse. Una de 500 MB puede llevar más de una hora. Sé paciente.
¿Qué hago si mi base de datos es muy grande y no puedo exportarla con phpMyAdmin?
Usa la línea de comandos (SSH). Conéctate al servidor antiguo y ejecuta: mysqldump -u usuario -p nombre_bd > respaldo.sql. Luego, en el nuevo servidor: mysql -u usuario -p nombre_bd < respaldo.sql. Si no tienes acceso SSH, pide ayuda a tu hosting.
¿Pierdo los pedidos realizados durante la migración?
Sí, si la tienda sigue abierta mientras migras. Para evitarlo, pon tu tienda en modo mantenimiento (desde el back office: "Parámetros de la tienda > Mantenimiento") antes de empezar. Así no se registrarán nuevos pedidos.
¿Necesito cambiar algo en el archivo .htaccess?
Sí, si cambias de dominio. Deberás regenerar el .htaccess desde el back office (Parámetros de la tienda > SEO y URLs > Guardar). Si solo cambias de servidor pero mantienes el mismo dominio, no es necesario.
¿Qué pasa con las URLs de las imágenes?
Al cambiar de servidor, las URLs de las imágenes pueden no actualizarse automáticamente. Usa la herramienta "Regenerar miniaturas" en el back office (Diseño > Imágenes) o realiza un reemplazo en la base de datos con una herramienta como "Better Search & Replace" (con cuidado).
¿Puedo migrar sin perder los módulos y temas?
Sí, siempre que copies también la carpeta modules y themes del servidor antiguo al nuevo. La base de datos solo almacena la configuración de los módulos, no los archivos en sí.
¿Qué es Syspanel y cómo accedo?
Syspanel es un panel de control de hosting (similar a cPanel) que usamos en algunos servidores. Para acceder, abre tu navegador y escribe tu-dominio.com:2106. Inicia sesión con tu usuario y contraseña de administrador del servidor. Desde ahí puedes gestionar bases de datos, archivos y más.
¿Y si algo sale mal?
No te preocupes. Si has hecho la copia de seguridad del Paso 1, puedes restaurar todo en el servidor antiguo y empezar de nuevo. La copia de seguridad es tu mejor amiga.
Conclusión
Migrar la base de datos de PrestaShop a otro servidor es un proceso que, aunque requiere atención, está al alcance de cualquier usuario siguiendo estos pasos. Recuerda siempre hacer una copia de seguridad, exportar la base de datos, importarla en el nuevo servidor, configurar el archivo parameters.php y probar todo. Con un poco de paciencia, tu tienda estará funcionando en su nuevo hogar en poco tiempo.
Si te surge cualquier duda, no dudes en consultar con tu equipo de soporte técnico. ¡Buena suerte con tu transferencia!
