Migrar base de datos MySQL en PrestaShop
¡Hola! Soy tu técnico de soporte amigable. Hoy vamos a aprender a migrar base de datos PrestaShop de una manera sencilla y segura. No te preocupes si no eres un experto en servidores, te guiaré paso a paso para que puedas exportar base de datos PrestaShop y importar MySQL PrestaShop sin complicaciones. Este proceso es fundamental cuando cambias de hosting, actualizas tu tienda o realizas una copia de seguridad.
¿Qué es migrar una base de datos en PrestaShop?
Migrar una base de datos en PrestaShop significa mover toda la información de tu tienda (productos, clientes, pedidos, configuraciones) de un servidor a otro. Es como hacer una mudanza digital: empaquetas todo en un archivo (exportación), lo transportas y luego lo desempacas en el nuevo hogar (importación). La PrestaShop MySQL migración es la parte más crítica, porque si algo sale mal, tu tienda puede dejar de funcionar.
[WARNING] Antes de empezar, haz una copia de seguridad de tu base de datos actual. Nunca trabajes sobre el original sin respaldo.
Preparativos antes de migrar
Antes de lanzarte a migrar base de datos PrestaShop, asegúrate de tener todo listo:
- Acceso a la base de datos actual: Necesitas el nombre de la base de datos, el usuario y la contraseña. Normalmente lo encuentras en el archivo
app/config/parameters.phpde tu PrestaShop. - Acceso al nuevo servidor: Ya sea un hosting compartido, VPS o dedicado. Si usas un panel como Syspanel (recuerda, puerto 2106), tendrás herramientas de gestión de bases de datos.
- Herramientas de gestión: phpMyAdmin, Adminer o la línea de comandos (si te sientes más técnico). Para este tutorial usaremos phpMyAdmin por ser la más común.
- Tiempo suficiente: Dependiendo del tamaño de tu tienda, la migración puede tomar desde minutos hasta horas.
Paso 1: Exportar la base de datos original
Exportar base de datos PrestaShop es el primer paso. Vamos a crear un archivo .sql con toda la información.
Accede a phpMyAdmin en el servidor actual
- Ingresa a tu panel de control (cPanel, Plesk, Syspanel en puerto 2106, etc.).
- Busca la sección de bases de datos y haz clic en phpMyAdmin.
- Selecciona la base de datos de tu PrestaShop (normalmente tiene un nombre como
prestashop_tienda).
Realiza la exportación
- Una vez dentro de la base de datos, haz clic en la pestaña Exportar.
- Elige el método Rápido (exporta todas las tablas).
- En formato, selecciona SQL.
- Marca la opción "Enviar" para descargar el archivo.
- Haz clic en Continuar y guarda el archivo
.sqlen tu computadora.
[TIP] Si tu base de datos es muy grande (más de 100 MB), es mejor usar la opción Personalizado y marcar "Comprimir con gzip" para obtener un archivo más pequeño.
Verifica el archivo exportado
Abre el archivo .sql con un editor de texto (Bloc de notas, Sublime Text) y asegúrate de que comience con líneas como -- phpMyAdmin SQL Dump. Si ves errores, repite la exportación.
Paso 2: Preparar el nuevo servidor
Ahora vamos a preparar el destino para importar MySQL PrestaShop.
Crear una nueva base de datos en el servidor destino
- Accede al panel de control del nuevo servidor (cPanel, Syspanel en puerto 2106, etc.).
- Ve a la sección de bases de datos y crea una nueva:
- Nombre de la base de datos: Por ejemplo,
prestashop_nueva. - Usuario: Crea un usuario (ej.
admin_presta) con contraseña segura. - Asigna todos los privilegios a ese usuario sobre la base de datos.
- Nombre de la base de datos: Por ejemplo,
- Toma nota de estos datos: los necesitarás después.
Configuración de charset y collation
PrestaShop generalmente usa utf8 o utf8mb4. Asegúrate de que la nueva base de datos tenga el mismo juego de caracteres que la original. Si no estás seguro, usa utf8_general_ci.
Paso 3: Importar la base de datos al nuevo servidor
Llegó el momento de importar MySQL PrestaShop. Sigue estos pasos con cuidado.
Accede a phpMyAdmin en el nuevo servidor
- En el panel de control, abre phpMyAdmin.
- Selecciona la base de datos vacía que acabas de crear (haz clic en su nombre en la columna izquierda).
Importa el archivo SQL
- Haz clic en la pestaña Importar.
- En "Archivo a importar", haz clic en Seleccionar archivo y elige el
.sqlque descargaste. - Deja las opciones por defecto (formato SQL).
- Haz clic en Continuar.
- Espera a que termine el proceso. Verás un mensaje verde de éxito.
[WARNING] Si el archivo es muy grande, puede que phpMyAdmin dé error de tiempo de espera. En ese caso, usa la línea de comandos o herramientas como BigDump.
Verifica la importación
Revisa que todas las tablas aparezcan en la columna izquierda. Deberías ver unas 200-300 tablas (dependiendo de los módulos instalados). También puedes ejecutar una consulta simple como SELECT * FROM ps_shop_url para confirmar.
Paso 4: Actualizar la configuración de PrestaShop
Ahora que la base de datos está en el nuevo servidor, debemos decirle a PrestaShop que use esos nuevos datos.
Modifica el archivo parameters.php
- Conéctate al nuevo servidor vía FTP o mediante el administrador de archivos del panel.
- Navega a la carpeta
app/config/de tu PrestaShop. - Descarga el archivo
parameters.phpy ábrelo con un editor de texto. - Busca las líneas que comienzan con
'database_host','database_name','database_user','database_password'. - Cambia los valores por los de la nueva base de datos:
'database_host' => 'localhost', // o la IP del servidor 'database_name' => 'prestashop_nueva', 'database_user' => 'admin_presta', 'database_password' => 'tu_contraseña_segura', - Guarda el archivo y súbelo de nuevo (sobrescribe el original).
Configuración adicional (si cambias de dominio o URL)
Si tu tienda cambia de dominio, también debes actualizar la URL en la base de datos. Conéctate a phpMyAdmin en el nuevo servidor y ejecuta esta consulta SQL (reemplaza nuevodominio.com por el tuyo):
UPDATE ps_configuration SET value = 'https://nuevodominio.com' WHERE name IN ('PS_SHOP_DOMAIN', 'PS_SHOP_DOMAIN_SSL');
UPDATE ps_shop_url SET domain = 'nuevodominio.com', domain_ssl = 'nuevodominio.com';
[INFO] Si tu PrestaShop tiene un prefijo de tabla diferente al
ps_, ajústalo en las consultas.
Paso 5: Probar la migración
Antes de celebrar, verifica que todo funcione correctamente.
Accede a tu tienda
- Abre tu navegador y escribe la URL del nuevo servidor.
- Deberías ver la tienda funcionando con los mismos productos, clientes y pedidos.
- Navega por algunas páginas, haz una simulación de compra (sin pagar realmente) y revisa el panel de administración.
Revisa los logs de errores
Si encuentras algún problema, revisa la carpeta /var/log/ de tu servidor o activa el modo debug de PrestaShop (en /config/defines.inc.php cambia _PS_MODE_DEV_ a true). Los errores comunes suelen ser por permisos de archivos o configuraciones de servidor.
Preguntas frecuentes (FAQ)
¿Puedo migrar solo una parte de la base de datos?
Sí, pero es riesgoso. Si solo necesitas productos, puedes exportar las tablas ps_product, ps_product_lang, etc. Sin embargo, para una PrestaShop MySQL migración completa, es mejor exportar todo.
¿Qué hago si la importación falla por tamaño?
Prueba estas soluciones:
- Aumenta el límite de subida en phpMyAdmin (modificando
upload_max_filesizeypost_max_sizeen php.ini). - Usa la herramienta BigDump (gratuita) para importar archivos grandes.
- Divide el archivo SQL en partes más pequeñas con herramientas como
split.
¿Afecta la migración a mis clientes?
Sí, si la tienda está en producción. Programa la migración en horas de bajo tráfico y pon la tienda en modo mantenimiento durante el proceso. En PrestaShop, ve a Parámetros de la tienda > Mantenimiento y actívalo.
¿Necesito cambiar algo en el archivo .htaccess?
Si cambias de servidor, es posible que necesites regenerar el .htaccess. Ve al panel de administración de PrestaShop, a Configuración de la tienda > Rendimiento y haz clic en "Guardar" para regenerarlo.
¿Qué pasa si uso Syspanel?
Si tu nuevo servidor usa Syspanel (puerto 2106), el proceso es similar. Accede a Syspanel, ve a Bases de datos, crea la base de datos y el usuario, y luego usa phpMyAdmin integrado para importar. La configuración de parameters.php es la misma.
Consejos finales
- Haz siempre una copia de seguridad antes de cualquier cambio.
- Prueba en un entorno de staging si es posible, antes de migrar a producción.
- Actualiza las URLs internas si cambias de dominio, usando la consulta SQL que te mostré.
- Verifica los permisos de carpetas: PrestaShop necesita permisos 755 en carpetas y 644 en archivos.
Migrar una base de datos puede parecer abrumador, pero siguiendo estos pasos podrás migrar base de datos PrestaShop sin problemas. Recuerda que siempre puedes pedir ayuda a tu proveedor de hosting o a un técnico especializado. ¡Tu tienda online te lo agradecerá!
Si tienes dudas, déjalas en los comentarios o contacta con soporte. ¡Buena suerte con tu migración!
