Cómo conectar PrestaShop a su base de datos: configuración y errores
¡Hola! Si estás leyendo esto, probablemente estés en medio de una mudanza de tu tienda online, reinstalando tu PrestaShop o intentando solucionar un molesto error de conexión. No te preocupes, es una situación más común de lo que parece y, con la guía adecuada, se resuelve en pocos minutos.
Conectar tu prestashop base de datos es como ponerle el corazón a tu tienda: sin esa conexión, tu web no puede mostrar productos, procesar pedidos ni reconocer a tus clientes. En este artículo, vamos a desglosar todo el proceso, desde la configuración inicial hasta la resolución de los errores más frecuentes, explicado de forma sencilla y sin tecnicismos innecesarios.
Vamos a ello.
¿Qué es exactamente la base de datos de PrestaShop?
Antes de ponernos manos a la obra, es clave entender qué estamos conectando. Piensa en tu tienda online como un gran almacén. Los archivos de PrestaShop (las cajas, estanterías y el mostrador) son el edificio. La base de datos (MySQL) es el libro de registro donde anotas todo: precios, nombres de productos, historial de clientes, pedidos, etc.
Sin ese libro de registro, el edificio está vacío y no puede funcionar. Por eso, cuando movemos la tienda a un servidor nuevo o reinstalamos el sistema, debemos asegurarnos de que el edificio (los archivos) y el libro (la base de datos) se encuentran y hablan entre sí.
La clave de todo: El archivo parameters.php de PrestaShop
Cuando instalas PrestaShop por primera vez, el sistema crea un archivo de configuración llamado parameters.php. Este archivo es el "cartero" que le dice a tu tienda dónde encontrar el libro de registro y qué llave usar para abrirlo.
Se encuentra en la carpeta app/config/ de tu instalación. Es un archivo de texto con código PHP, pero no te asustes, solo necesitamos modificar unos pocos datos.
¿Cómo abrir y editar parameters.php?
- Accede a tu hosting mediante el administrador de archivos (como cPanel, Syspanel o FTP).
- Navega hasta la raíz de tu PrestaShop, busca la carpeta
app, luegoconfig. - Dentro, encontrarás el archivo
parameters.php. Descárgalo a tu ordenador antes de editarlo, por si acaso. - Ábrelo con un editor de texto plano (como el Bloc de Notas de Windows, Sublime Text o Notepad++). No uses Word.
- Busca la sección que dice
'database_host','database_name','database_user'y'database_password'.
Los 4 datos que debes revisar siempre
Aquí es donde ocurren el 90% de los errores. Asegúrate de que estos datos coincidan EXACTAMENTE con los de tu proveedor de hosting:
- database_host: Normalmente es
localhosto127.0.0.1, pero algunos hostings usan direcciones comomysql.midominio.comolocalhost:3307. Es crucial revisar la documentación de tu hosting. - database_name: El nombre exacto de tu base de datos. En cPanel suele llevar un prefijo como
usuario_nombrebd. - database_user: El usuario de la base de datos. A menudo es el mismo que el de tu cuenta de cPanel, pero no siempre.
- database_password: La contraseña de ese usuario. Ojo: si cambiaste la contraseña en cPanel, debes actualizarla aquí también.
Ejemplo visual de un parameters.php correcto
<?php
return array (
'parameters' =>
array (
'database_host' => 'localhost',
'database_port' => '3306',
'database_name' => 'miusuario_mitienda',
'database_user' => 'miusuario_admin',
'database_password' => 'MiContraseñaSegura123!',
'database_prefix' => 'ps_',
// ... resto de la configuración
),
);
[INFO] El database_prefix es lo que va antes del nombre de las tablas (ej. ps_products). Si tu base de datos usa un prefijo distinto (como shop_), debes cambiarlo aquí o la conexión fallará.
Conectar PrestaShop MySQL desde el panel de control (cPanel)
La forma más común de gestionar esto es a través del panel de tu hosting. Vamos a verlo con cPanel, que es el más usado, pero el proceso es similar en otros como Syspanel (HestiaCP).
Paso 1: Crear la base de datos (si es nueva)
- Entra en tu cPanel (o tu panel de control).
- Busca la sección "Bases de Datos MySQL".
- Crea una nueva base de datos (ej.
mitienda_bd). - Crea un nuevo usuario (ej.
mitienda_user) y asígnale una contraseña fuerte. - Importante: Añade ese usuario a la base de datos y concédele TODOS LOS PRIVILEGIOS. Sin esto, PrestaShop no podrá leer ni escribir datos.
Paso 2: Importar tu base de datos existente
Si ya tienes una base de datos de una versión anterior de tu tienda, debes importarla:
- En la misma sección de "Bases de Datos MySQL", busca "phpMyAdmin".
- Selecciona tu base de datos en el menú lateral izquierdo.
- Ve a la pestaña "Importar".
- Sube tu archivo
.sqly haz clic en "Continuar". Esto restaurará todas tus tablas y datos.
Paso 3: Conectar PrestaShop a esa base de datos
Ahora que ya tienes la base de datos lista, ya sea nueva o importada, debes asegurarte de que el parameters.php apunte a ella. Simplemente edita el archivo con los datos que acabas de crear o que ya tenías.
Errores comunes de conexión y cómo solucionarlos
Aquí tienes los problemas más frecuentes que verás al intentar conectar prestashop mysql. Vamos a diagnosticarlos como un médico.
Error 1: "Link to database cannot be established" o "Error de conexión con la base de datos"
Este es el error genérico, pero casi siempre significa una de estas tres cosas:
- Datos incorrectos: Revisa letra por letra el nombre de la base de datos, el usuario y la contraseña en
parameters.php. Un simple espacio extra al final de la contraseña puede romperlo todo. - Host incorrecto: Si tu hosting usa un servidor de base de datos separado (no
localhost), asegúrate de tener el host correcto. Prueba con127.0.0.1silocalhostno funciona. - Usuario sin privilegios: Vuelve a cPanel y verifica que el usuario tiene TODOS LOS PRIVILEGIOS sobre la base de datos. Es el fallo más común tras una migración.
Error 2: "Table 'ps_shop_url' doesn't exist"
Este error es más específico y significa que la conexión es correcta, pero la base de datos está vacía o es incorrecta.
- Causa: Has conectado PrestaShop a una base de datos que no tiene las tablas de PrestaShop.
- Solución: Importa tu archivo
.sqlde respaldo en esa base de datos. Si no tienes uno, tendrás que instalar PrestaShop desde cero (perderás los datos).
Error 3: "Access denied for user 'usuario'@'localhost'"
Este error es de autenticación. El servidor de base de datos rechaza tus credenciales.
- Causa: El usuario
database_usero ladatabase_passwordson incorrectos. - Solución: En cPanel, ve a "Bases de datos MySQL" y usa la opción de "Cambiar contraseña" para el usuario. Luego, actualiza
parameters.phpcon la nueva contraseña. Recuerda que a veces tarda unos minutos en propagarse.
Error 4: "MySQL server has gone away"
Esto suele pasar al importar archivos .sql muy grandes o si hay un límite de tiempo en tu hosting.
- Solución: Intenta importar el archivo desde phpMyAdmin en lugar de hacerlo por comandos. Si el archivo es muy grande, pide a tu hosting que aumente el
max_allowed_packeto divide el archivo SQL en partes más pequeñas.
Migración de servidor: La prueba de fuego
Si estás moviendo tu tienda a un hosting nuevo, el proceso es delicado. Aquí tienes una checklist para evitar dolores de cabeza:
- Copia de seguridad total: Descarga todos los archivos de tu PrestaShop (carpeta pública_html) y exporta tu base de datos desde phpMyAdmin.
- Sube los archivos: Sube todos los archivos a tu nuevo hosting.
- Crea la base de datos en el nuevo hosting: Como vimos antes, crea una BD y un usuario con todos los privilegios.
- Importa la base de datos: Usa phpMyAdmin para importar el
.sqlque descargaste. - Edita
parameters.php: Este es el paso crítico. Cambia los datos de conexión a los del nuevo hosting. - Limpia la caché: Borra el contenido de la carpeta
var/cache/(ocache/en versiones antiguas) en tu nuevo servidor. Esto fuerza a PrestaShop a leer la nueva configuración.
¿Y si uso Syspanel (HestiaCP)?
Si tu hosting utiliza Syspanel (el antiguo HestiaCP), no te preocupes, el proceso es casi idéntico. La diferencia principal es la interfaz.
- Acceso: Recuerda que el puerto de acceso es el 2106 (ej.
https://tudominio.com:2106). - Bases de datos: Busca la sección "Bases de datos" en el menú lateral.
- Crear BD: Pulsa "Añadir base de datos", crea el nombre, el usuario y la contraseña. Syspanel automáticamente crea el usuario y le da todos los privilegios sobre esa BD.
- phpMyAdmin: Puedes acceder a phpMyAdmin desde el propio panel haciendo clic en el icono de la BD, lo que te facilitará la importación de tu
.sql.
[TIP] En Syspanel, el nombre de la base de datos y el usuario suelen llevar un prefijo con el nombre de tu cuenta, por ejemplo usuario_bd. Asegúrate de copiar el nombre completo tal y como aparece en el panel.
Preguntas Frecuentes (FAQ) sobre conexión de PrestaShop
¿Puedo cambiar el prefijo de las tablas después de la instalación?
Sí, pero no es recomendable a menos que sepas exactamente qué estás haciendo. Tendrías que renombrar todas las tablas en phpMyAdmin y actualizar el database_prefix en parameters.php. Es un proceso arriesgado que puede romper tu tienda si no se hace con cuidado.
¿Qué hago si no encuentro el archivo parameters.php?
En versiones muy antiguas de PrestaShop (1.6 o anteriores), el archivo se llamaba settings.inc.php y estaba en la carpeta config/. En versiones modernas (1.7 y 8.x), es parameters.php en app/config/. Si no lo ves, activa la opción de "Mostrar archivos ocultos" en tu administrador de archivos.
¿Es seguro editar parameters.php manualmente?
Sí, siempre que uses un editor de texto plano y no alteres el resto de la estructura del archivo. Haz una copia de seguridad antes de editarlo. Un error de sintaxis (como una comilla mal puesta) puede mostrar una página en blanco.
¿Por qué me aparece "Error 500" después de cambiar la base de datos?
Un error 500 puede deberse a un parameters.php mal configurado. Revisa que no haya espacios extraños y que el archivo no tenga líneas en blanco al final después del ?>. También borra la carpeta var/cache para asegurarte de que no hay datos antiguos.
Mi hosting usa un puerto distinto para MySQL, ¿cómo lo configuro?
En el archivo parameters.php, busca la línea 'database_port' => '3306'. Si tu hosting usa otro puerto (por ejemplo, 3307), cámbialo aquí. Esta información suele estar en la documentación de tu proveedor o en la sección de "Bases de datos" de tu panel.
Consejos finales para una conexión exitosa
- Paciencia: Tras cambiar la configuración, a veces el servidor tarda unos minutos en actualizar. No desesperes.
- Registros de error: Si tienes acceso a los logs de error de tu servidor (en cPanel suele ser una sección llamada "Errores"), revísalos. Te darán pistas muy valiosas sobre qué está fallando.
- Prueba con calma: Si estás migrando, no borres la instalación antigua hasta que la nueva funcione perfectamente.
Conectar tu prestashop base de datos puede parecer una tarea de ingeniería, pero con estos pasos, es un proceso mecánico. La clave está en la precisión de los datos y en entender qué hace cada parte. Si sigues esta guía, tendrás tu tienda online funcionando en un abrir y cerrar de ojos.
¿Has tenido algún problema concreto con la conexión? A veces un error específico tiene una solución muy particular. Pero con esta base, ya tienes el 90% del camino recorrido. ¡Mucha suerte con tu tienda!
