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

Errores comunes al importar una base de datos en PrestaShop y cómo solucionarlos

Actualizado el 26 de febrero de 2026

Importar una base de datos en PrestaShop es una tarea habitual cuando migras de servidor, restauras una copia de seguridad o cambias de dominio. Sin embargo, es muy fácil encontrarse con errores MySQL que pueden bloquear tu tienda o dejarla inaccesible. En esta guía extensa, vamos a repasar los errores más comunes al importar una base de datos en PrestaShop y, lo más importante, cómo solucionarlos paso a paso. Todo explicado de forma clara y sencilla, para que puedas hacerlo tú mismo sin necesidad de ser un experto en bases de datos.


1. Error "MySQL ha perdido la conexión durante la importación"

Este es uno de los errores más frustrantes. Sucede cuando el archivo SQL es muy grande (por ejemplo, más de 50 MB) y el servidor cierra la conexión antes de terminar la importación.

Causas principales

  • El límite de tiempo de ejecución de PHP es demasiado bajo.
  • El tamaño máximo de subida de archivos está restringido.
  • El servidor tiene un límite de memoria insuficiente.

Soluciones prácticas

Aumenta los límites en tu servidor

Si tienes acceso a Syspanel (puerto 2106), puedes modificar estos valores en la configuración de PHP:

  1. Accede a tu panel de control Syspanel (ejemplo: https://tudominio.com:2106).
  2. Ve a la sección de Configuración de PHP o Ajustes del servidor.
  3. Busca y aumenta estos parámetros:
    • max_execution_time a 600 (10 minutos).
    • upload_max_filesize a 256M.
    • post_max_size a 256M.
    • memory_limit a 256M.

[TIP] Si no tienes acceso a Syspanel, contacta con tu proveedor de hosting y pídeles que aumenten estos límites temporalmente.

Divide el archivo SQL en partes más pequeñas

Otra opción es dividir el archivo grande en fragmentos de, por ejemplo, 10 MB. Puedes usar herramientas como BigDump o simplemente editar el archivo con un editor de texto como Notepad++.

  1. Abre el archivo .sql con un editor de texto.
  2. Busca la línea -- Dump completed (al final) y corta el contenido en varias partes.
  3. Guarda cada parte como parte1.sql, parte2.sql, etc.
  4. Importa cada parte por separado usando phpMyAdmin o la línea de comandos.

2. Error "SQLSTATE[HY000] [2002] Connection refused"

Este error aparece cuando PrestaShop no puede conectar con la base de datos después de la importación. Normalmente ocurre porque los datos de conexión (usuario, contraseña, servidor) no coinciden con los que tienes en el archivo de configuración.

Causas principales

  • El archivo app/config/parameters.php contiene datos incorrectos.
  • El servidor de base de datos no está accesible (por ejemplo, usa "localhost" cuando debería ser una IP).
  • La contraseña del usuario de la base de datos ha cambiado.

Soluciones prácticas

Revisa el archivo de configuración de PrestaShop

  1. Accede a tu servidor por FTP o desde el gestor de archivos de tu hosting.
  2. Abre el archivo app/config/parameters.php.
  3. Busca las líneas que empiezan por 'database_host', 'database_name', 'database_user' y 'database_password'.
  4. Asegúrate de que coinciden exactamente con los datos de la base de datos que has importado.

[WARNING] Si cambiaste el nombre de la base de datos o el usuario durante la importación, debes actualizar estos valores manualmente.

Prueba la conexión manualmente

Si tienes acceso a Syspanel (puerto 2106), puedes verificar la conexión desde la sección de bases de datos:

  1. Ve a Bases de datos en Syspanel.
  2. Selecciona la base de datos que importaste.
  3. Haz clic en Probar conexión.
  4. Si falla, revisa los datos del usuario y la contraseña.

[INFO] Si usas un hosting compartido, a veces el servidor de base de datos no es "localhost" sino algo como mysql.tudominio.com. Pregunta a tu proveedor.


3. Error "Table 'ps_product' doesn't exist" o tablas faltantes

Después de importar, algunos módulos o la propia tienda muestran errores de que faltan tablas. Esto suele pasar porque la importación no se completó correctamente o porque el archivo SQL estaba corrupto.

Causas principales

  • La importación se interrumpió a la mitad.
  • El archivo SQL no incluía todas las tablas (por ejemplo, solo era un backup parcial).
  • El prefijo de las tablas no coincide con el que usa PrestaShop.

Soluciones prácticas

Verifica la integridad del archivo SQL

  1. Abre el archivo .sql con un editor de texto.
  2. Busca las palabras CREATE TABLE y cuenta cuántas veces aparecen. Debería haber cientos (PrestaShop tiene más de 200 tablas).
  3. Si ves que el archivo termina abruptamente, está corrupto. Necesitas un backup completo.

Reimporta usando la línea de comandos (más fiable)

Si tu hosting permite acceso SSH, esta es la forma más segura:

mysql -u usuario -p nombre_basedatos < archivo.sql

Esto evita los límites de tiempo de phpMyAdmin.

[TIP] Si no tienes SSH, pide a tu hosting que lo active temporalmente o usa herramientas como Adminer que son más ligeras.

Ajusta el prefijo de las tablas

En PrestaShop, las tablas suelen tener un prefijo como ps_. Si tu archivo SQL usa otro prefijo (por ejemplo, prestashop_), debes renombrarlas o editar el archivo antes de importar.

  1. Abre el archivo .sql con un editor de texto.
  2. Reemplaza todas las ocurrencias de prestashop_ por ps_ (o el prefijo que uses).
  3. Guarda el archivo y vuelve a importar.

4. Error "Incorrect format" o "MySQL ha encontrado un error de sintaxis"

Este error aparece cuando el archivo SQL tiene caracteres extraños, saltos de línea incorrectos o está codificado en un formato no compatible (por ejemplo, UTF-8 con BOM).

Causas principales

  • El archivo se descargó o guardó con un formato incorrecto.
  • El editor de texto añadió caracteres ocultos (como BOM).
  • La versión de MySQL del servidor no es compatible con algunas instrucciones del archivo.

Soluciones prácticas

Convierte el archivo a UTF-8 sin BOM

  1. Abre el archivo .sql con Notepad++.
  2. Ve a Codificación > Convertir a UTF-8 sin BOM.
  3. Guarda el archivo con otro nombre (por ejemplo, backup_limpio.sql).
  4. Importa este nuevo archivo.

Elimina líneas problemáticas manualmente

Si el error te indica una línea concreta (por ejemplo, "Error en la línea 245"), abre el archivo y revisa esa línea. Puede que tenga un carácter extraño o un salto de línea incorrecto.

  1. Busca la línea 245 en el editor.
  2. Borra los caracteres extraños (como símbolos raros).
  3. Guarda y prueba de nuevo.

[WARNING] No borres líneas completas a menos que sepas lo que estás haciendo, podrías romper la base de datos.


5. Error "User already has more than 'max_user_connections' active connections"

Este error ocurre cuando hay demasiadas conexiones activas a la base de datos al mismo tiempo, a menudo porque la importación se ejecuta varias veces o hay procesos colgados.

Causas principales

  • Tienes varias pestañas de phpMyAdmin abiertas.
  • Hay procesos de importación anteriores que no se cerraron correctamente.
  • El límite de conexiones de tu hosting es muy bajo.

Soluciones prácticas

Cierra todas las conexiones activas

  1. Accede a Syspanel (puerto 2106) y ve a Bases de datos.
  2. Busca la opción Procesos activos o Kill processes.
  3. Finaliza todos los procesos que estén en estado "Sleep" o "Query" relacionados con tu usuario.

Reduce el número de pestañas abiertas

Cierra todas las ventanas de phpMyAdmin y vuelve a abrir solo una. Si estás usando herramientas como Adminer, asegúrate de tener solo una sesión activa.

[INFO] Algunos hostings limitan a 10 o 20 conexiones simultáneas. Si necesitas más, contacta con tu proveedor.


6. Error "The database name is incorrect" o "No database selected"

Este error es muy común cuando importas un archivo SQL que no incluye la instrucción USE nombre_base_datos;. Al no especificar la base de datos, el servidor no sabe dónde colocar las tablas.

Causas principales

  • El archivo SQL no contiene la línea USE nombre_base_datos;.
  • Estás importando desde la línea de comandos sin seleccionar la base de datos primero.
  • La base de datos no existe o está mal escrita.

Soluciones prácticas

Añade la línea USE al principio del archivo

  1. Abre el archivo .sql con un editor de texto.
  2. Al principio del todo, añade esta línea (reemplaza nombre_base_datos por el nombre real):
    USE nombre_base_datos;
    
  3. Guarda el archivo y vuelve a importar.

Selecciona la base de datos antes de importar

Si usas la línea de comandos, asegúrate de hacerlo así:

mysql -u usuario -p nombre_base_datos < archivo.sql

No olvides poner el nombre de la base de datos entre los comandos.

[TIP] En phpMyAdmin, siempre selecciona la base de datos en el panel izquierdo antes de hacer clic en "Importar".


7. Error "Out of memory" durante la importación

Este error ocurre cuando el servidor no tiene suficiente memoria RAM para procesar el archivo SQL. Es muy común en hostings compartidos con recursos limitados.

Causas principales

  • El archivo SQL es muy grande (más de 100 MB).
  • El límite de memoria de PHP es bajo.
  • El servidor tiene poca RAM disponible.

Soluciones prácticas

Aumenta la memoria de PHP en Syspanel

  1. Accede a Syspanel (puerto 2106).
  2. Ve a Configuración de PHP.
  3. Aumenta memory_limit a 512M o más.
  4. Guarda los cambios y reinicia el servicio si es necesario.

Usa la línea de comandos en lugar de phpMyAdmin

La línea de comandos consume menos recursos. Si tienes acceso SSH, ejecuta:

mysql -u usuario -p nombre_basedatos < archivo.sql

Si no tienes SSH, puedes usar BigDump, una herramienta que importa archivos grandes en partes.

[WARNING] Si el error persiste, contacta con tu hosting. Algunos proveedores tienen límites muy restrictivos y necesitarás un plan superior.


8. Error "Duplicate entry" o "Key already exists"

Este error aparece cuando intentas importar un archivo SQL que contiene datos que ya existen en la base de datos. Por ejemplo, si ya importaste una parte y luego intentas importar el archivo completo.

Causas principales

  • La base de datos ya tiene tablas con datos.
  • El archivo SQL incluye instrucciones INSERT que duplican registros.
  • Las claves primarias o únicas entran en conflicto.

Soluciones prácticas

Vacía la base de datos antes de importar

Si estás restaurando una copia de seguridad completa, es mejor empezar desde cero:

  1. En phpMyAdmin, selecciona la base de datos.
  2. Haz clic en Marcar todas (seleccionar todas las tablas).
  3. En el menú desplegable, elige Vaciar (truncate) para eliminar todos los datos.
  4. Luego importa el archivo SQL.

[INFO] Si solo quieres añadir datos nuevos sin borrar los existentes, edita el archivo SQL y cambia INSERT por INSERT IGNORE para que ignore los duplicados.

Usa la opción "Ignorar duplicados" en phpMyAdmin

Al importar, busca la opción Formato de archivo y selecciona SQL. Luego, en las opciones avanzadas, marca Ignorar duplicados si está disponible.


9. Error "Access denied for user" al importar

Este error significa que el usuario de la base de datos no tiene permisos suficientes para importar el archivo. Es común cuando usas un usuario que solo tiene permisos de lectura.

Causas principales

  • El usuario de la base de datos no tiene permisos de escritura.
  • La contraseña es incorrecta.
  • El usuario no está asociado a la base de datos correcta.

Soluciones prácticas

Verifica los permisos del usuario en Syspanel

  1. Accede a Syspanel (puerto 2106).
  2. Ve a Bases de datos > Usuarios.
  3. Busca el usuario que estás usando y asegúrate de que tenga todos los privilegios (SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, etc.).
  4. Si no, edita los permisos y asígnale Todos los privilegios.

Crea un nuevo usuario con permisos completos

Si el usuario actual no se puede modificar, crea uno nuevo:

  1. En Syspanel, ve a Añadir usuario.
  2. Asígnale un nombre y contraseña.
  3. Asocia ese usuario a la base de datos que vas a importar.
  4. Usa esos datos en la importación.

[TIP] Anota la contraseña en un lugar seguro. Después de la importación, actualiza el archivo parameters.php de PrestaShop con los nuevos datos.


10. Error "The server requested authentication method unknown to the client"

Este error es más técnico y ocurre cuando la versión de MySQL del servidor usa un método de autenticación que no es compatible con la herramienta que estás usando (por ejemplo, phpMyAdmin antiguo o cliente MySQL viejo).

Causas principales

  • El servidor usa caching_sha2_password (MySQL 8.0+).
  • Tu herramienta de importación (phpMyAdmin, Adminer) no soporta este método.
  • El usuario de la base de datos está configurado con autenticación moderna.

Soluciones prácticas

Cambia el método de autenticación del usuario

Desde la línea de comandos (si tienes acceso SSH), ejecuta:

ALTER USER 'usuario'@'localhost' IDENTIFIED WITH mysql_native_password BY 'contraseña';
FLUSH PRIVILEGES;

Reemplaza usuario y contraseña por los tuyos.

[WARNING] Si no tienes SSH, pide a tu hosting que ejecute esta consulta por ti o que configure el usuario con mysql_native_password.

Usa una herramienta de importación compatible

Algunas versiones de phpMyAdmin (4.9+) ya soportan caching_sha2_password. Si usas una versión anterior, actualiza phpMyAdmin o prueba con Adminer, que suele ser más compatible.


Preguntas Frecuentes (FAQ) sobre errores al importar base de datos en PrestaShop

¿Qué hago si la importación se queda colgada a mitad?

Detén el proceso, divide el archivo SQL en partes más pequeñas (de 10-20 MB) e importa cada parte por separado. También puedes aumentar el tiempo de ejecución en Syspanel.

¿Puedo importar una base de datos de PrestaShop 1.6 a una tienda 1.7?

Sí, pero ten cuidado. Las estructuras de las tablas cambian. Es mejor hacer una migración oficial usando el módulo "1-Click Upgrade" de PrestaShop. Si importas directamente, puedes tener errores de compatibilidad.

¿Cómo sé si mi archivo SQL está corrupto?

Abre el archivo con un editor de texto y busca al final. Si ves algo como -- Dump completed o /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;, está completo. Si termina abruptamente, está corrupto.

¿Es mejor importar por phpMyAdmin o por línea de comandos?

La línea de comandos es más rápida y fiable para archivos grandes. phpMyAdmin es más visual y fácil para archivos pequeños (menos de 50 MB). Si no tienes SSH, usa phpMyAdmin con los ajustes adecuados.

¿Qué hago si después de importar la tienda

¿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