Cómo migrar una base de datos de PrestaShop a otro hosting
¿Necesitas mover tu tienda PrestaShop a un nuevo hosting y te preocupa la parte de la base de datos? No te preocupes, es un proceso muy común y, siguiendo los pasos correctos, es sencillo y seguro. En esta guía completa te explicaré, paso a paso, cómo migrar base de datos de PrestaShop a otro servidor, usando herramientas como cPanel, Plesk, DirectAdmin o Syspanel.
Vamos a desglosar todo el proceso para que, incluso si no eres un experto técnico, puedas hacerlo sin problemas. Al final, tendrás tu base de datos funcionando en el nuevo hosting y tu tienda lista para operar.
¿Por qué es importante migrar la base de datos correctamente?
Tu base de datos de PrestaShop es el corazón de tu tienda. Contiene toda la información crítica: productos, clientes, pedidos, configuraciones, contraseñas, y mucho más. Si cometes un error durante la migración, podrías perder datos valiosos o dejar tu tienda inaccesible.
[WARNING] Importante: Antes de empezar, asegúrate de tener una copia de seguridad completa de tu sitio web (archivos y base de datos) en un lugar seguro. Si algo sale mal, podrás restaurar todo.
Preparativos antes de la migración
Antes de lanzarnos a mover la base de datos, necesitamos tener todo listo en el nuevo hosting.
1. Contrata tu nuevo hosting y verifica los requisitos
Asegúrate de que tu nuevo plan de hosting cumpla con los requisitos de PrestaShop (PHP, MySQL, versión de PrestaShop, etc.). La mayoría de los hostings modernos lo cumplen, pero es mejor confirmar.
2. Accede al panel de control de tu nuevo hosting
Dependiendo del panel que use tu nuevo proveedor, el proceso varía ligeramente. Aquí te explico los más comunes:
- cPanel: Es el más popular. Accederás a través de
tudominio.com/cpanelotudominio.com:2083. - Plesk: Normalmente se accede por
tudominio.com:8443otudominio.com/plesk. - DirectAdmin: Se accede por
tudominio.com:2222. - Syspanel (HestiaCP): Recuerda que el puerto de acceso es el 2106. Por ejemplo:
tudominio.com:2106.
3. Crea una base de datos vacía en el nuevo hosting
Este es un paso fundamental. Necesitas un "contenedor" vacío donde volcaremos los datos de tu tienda.
- En cPanel: Busca la sección "Bases de Datos" y haz clic en "MySQL Databases". Crea una nueva base de datos (ej:
miprestashop_bd). Luego, crea un usuario (ej:miprestashop_user) y asígnale todos los privilegios (marca "All Privileges"). Anota el nombre de la base de datos, el usuario y la contraseña. - En Plesk: Ve a "Bases de Datos", haz clic en "Agregar base de datos". Ponle un nombre, crea un usuario y contraseña, y asigna todos los privilegios.
- En DirectAdmin: Ve a "MySQL Management", crea una nueva base de datos y un usuario con todos los permisos.
- En Syspanel: Ve a "Bases de Datos" y luego a "Agregar base de datos". Crea la base de datos y un usuario con todos los privilegios.
[TIP] Apunta en un bloc de notas los datos de conexión de la nueva base de datos (nombre, usuario, contraseña y servidor, que suele ser localhost). Los necesitarás más adelante.
Paso 1: Exportar la base de datos desde tu hosting antiguo
Ahora vamos a sacar una copia de tu base de datos actual. Hay dos formas principales: usando phpMyAdmin o mediante SSH (si tu hosting lo permite). Te explico la más común y sencilla.
Opción A: Usando phpMyAdmin (recomendado)
phpMyAdmin es una herramienta web que te permite gestionar bases de datos MySQL de forma gráfica. La mayoría de paneles de control la incluyen.
- Accede a phpMyAdmin en tu hosting antiguo. Normalmente lo encuentras en el panel de control (cPanel, Plesk, DirectAdmin, Syspanel). Busca un icono que diga "phpMyAdmin".
- Selecciona la base de datos de tu PrestaShop. En la columna de la izquierda, verás una lista de bases de datos. Haz clic en la que corresponde a tu tienda.
- Ve a la pestaña "Exportar". En la parte superior de la ventana.
- Elige el método de exportación. Te recomiendo usar el método "Rápido" y seleccionar el formato SQL. Asegúrate de que la opción "Exportar todo" esté marcada.
- Haz clic en "Continuar" o "Exportar". El navegador descargará un archivo con extensión
.sql(ej:miprestashop.sql). Este archivo contiene todas las instrucciones para recrear tu base de datos.
[INFO] Si tu base de datos es muy grande (más de 50 MB), la exportación por phpMyAdmin puede fallar. En ese caso, puedes usar herramientas como mysqldump a través de SSH o consultar con tu hosting antiguo si ofrecen exportaciones por consola.
Opción B: Usando SSH (para usuarios avanzados)
Si tu hosting antiguo te da acceso SSH, puedes usar el comando mysqldump. Es más rápido y no tiene límite de tamaño.
mysqldump -u usuario_bd -p nombre_bd > miprestashop.sql
Te pedirá la contraseña de la base de datos. Luego descarga el archivo miprestashop.sql a tu ordenador.
Paso 2: Importar la base de datos en tu nuevo hosting
Ahora que tienes el archivo .sql en tu ordenador, vamos a "volcarlo" en la base de datos vacía que creaste en el nuevo hosting.
Opción A: Usando phpMyAdmin (recomendado)
- Accede a phpMyAdmin en tu nuevo hosting.
- Selecciona la base de datos vacía que creaste. Haz clic en su nombre en la columna de la izquierda.
- Ve a la pestaña "Importar".
- Haz clic en "Seleccionar archivo" y busca el archivo
.sqlque descargaste. - Deja las opciones por defecto (formato SQL, etc.) y haz clic en "Continuar" o "Importar".
- Espera a que termine. Dependiendo del tamaño, puede tardar unos segundos o varios minutos. Verás un mensaje de éxito.
[WARNING] Si el archivo es muy grande y la importación falla, puedes intentar dividir el archivo SQL en partes más pequeñas usando un editor de texto o herramientas online. También puedes pedir a tu nuevo hosting que aumente el límite de subida temporalmente.
Opción B: Usando SSH (para usuarios avanzados)
Sube el archivo .sql a tu nuevo hosting (por ejemplo, con scp o FileZilla) y luego ejecuta:
mysql -u usuario_nuevo -p nombre_nueva_bd < miprestashop.sql
Te pedirá la contraseña del nuevo usuario.
Paso 3: Configurar la conexión en PrestaShop
Tu base de datos ya está en el nuevo hosting, pero PrestaShop aún apunta a la antigua. Necesitamos actualizar el archivo de configuración.
1. Localiza el archivo parameters.php
Este archivo se encuentra en la carpeta app/config/ de tu instalación de PrestaShop (por ejemplo, public_html/app/config/parameters.php). Si tu PrestaShop es anterior a la versión 1.7, el archivo se llama settings.inc.php y está en config/settings.inc.php.
2. Edita el archivo
Abre el archivo con un editor de texto (como Notepad++ o Sublime Text). Busca las siguientes líneas y cámbialas por los datos de tu nueva base de datos:
'database_host' => 'localhost', // Normalmente es localhost
'database_port' => '',
'database_name' => 'nombre_de_tu_nueva_bd',
'database_user' => 'usuario_de_tu_nueva_bd',
'database_password' => 'contraseña_de_tu_nueva_bd',
[TIP] Si tu nuevo hosting usa un servidor de base de datos remoto (no localhost), el valor de database_host será una dirección IP o un nombre de servidor que te proporcionará tu hosting. Lo más común es que sea localhost.
3. Guarda los cambios y sube el archivo
Guarda el archivo y súbelo a tu nuevo hosting (sobrescribe el existente) usando FTP o el administrador de archivos de tu panel.
Paso 4: Verificar la migración
¡Ya casi está! Ahora comprobemos que todo funciona.
- Accede a tu tienda en el nuevo hosting. Escribe tu dominio en el navegador.
- Revisa que todo se vea correcto: productos, categorías, clientes (si tienes acceso al back office), etc.
- Prueba a hacer un pedido de prueba (puedes usar un modo de prueba o un producto con precio 0).
- Accede al back office (tudominio.com/adminXXXXX) e inicia sesión con tus credenciales habituales.
Si todo está bien, ¡enhorabuena! Has migrado tu base de datos con éxito.
[INFO] Si ves errores de conexión a la base de datos, revisa los datos en parameters.php. Asegúrate de que el usuario tiene todos los privilegios en la base de datos y que el servidor de base de datos (host) es correcto.
Solución de problemas comunes (FAQ)
¿Por qué veo un error "Error de conexión a la base de datos"?
- Causa más común: Los datos en
parameters.phpson incorrectos. Revisa nombre de base de datos, usuario, contraseña y host. - Otra causa: El usuario no tiene permisos suficientes. En phpMyAdmin, ve a "Privilegios" y asegúrate de que tenga todos los privilegios (ALL PRIVILEGES).
¿Por qué la importación falla con un error de tamaño?
- Solución: Aumenta el límite de subida en phpMyAdmin (pide a tu hosting) o divide el archivo SQL en partes. También puedes usar la línea de comandos (SSH) si tienes acceso.
¿Pierdo los datos de mi tienda antigua al migrar?
- No, mientras no borres la base de datos antigua. La migración es una copia. Tu tienda antigua seguirá funcionando hasta que apuntes el dominio al nuevo hosting. Te recomiendo mantener la copia de seguridad por si acaso.
¿Necesito cambiar algo en los archivos de PrestaShop además de parameters.php?
- Normalmente no. La configuración de la tienda (URL, temas, módulos) se almacena en la base de datos, así que al migrarla, todo se traslada. Solo asegúrate de que los archivos de tu tienda (imágenes, módulos, temas) también estén en el nuevo hosting.
¿Y si uso Syspanel (HestiaCP) y no encuentro phpMyAdmin?
- En Syspanel, phpMyAdmin suele estar disponible en
tudominio.com:2106/phpmyadmino dentro del panel en la sección "Bases de Datos". Si no lo ves, contacta a tu hosting.
Conclusión
Migrar la base de datos de PrestaShop a otro hosting no es complicado si sigues los pasos adecuados. Recuerda siempre hacer una copia de seguridad, crear la base de datos vacía en el nuevo hosting, exportar la antigua, importarla y actualizar la configuración. Con esta guía, podrás hacerlo tú mismo sin necesidad de un técnico.
[TIP] Si tienes dudas, no dudes en consultar la documentación de tu panel de control (cPanel, Plesk, DirectAdmin o Syspanel) o contactar al soporte de tu nuevo hosting. ¡Ellos están para ayudarte!
¡Buena suerte con tu migración!
