Cómo conectar PrestaShop a una base de datos MySQL (cPanel/Plesk)
Conectar PrestaShop a una base de datos MySQL es uno de los pasos más críticos durante la instalación o migración de tu tienda online. Este proceso define el "cerebro" donde se almacenarán tus productos, pedidos y clientes. Aunque suene técnico, es un procedimiento muy mecánico si sigues los pasos correctos.
En esta guía extensa, te explicaré cómo hacerlo tanto si usas cPanel como Plesk, dos de los paneles de control de hosting más comunes. Además, resolveremos las dudas típicas que surgen con el archivo parameters.php y los errores de conexión más frecuentes.
Requisitos previos antes de empezar con PrestaShop y MySQL
Antes de lanzarte a crear bases de datos, necesitas tener claro qué datos vas a necesitar. La conexión entre PrestaShop y MySQL se basa en cuatro datos fundamentales:
- Nombre de la base de datos. Es el identificador único donde se guardará todo.
- Usuario de la base de datos. La cuenta que tiene permiso para leer y escribir en esa base.
- Contraseña del usuario. La clave de acceso asociada a ese usuario.
- Nombre del servidor (host). Normalmente es
localhosto una dirección tipomysql.tudominio.com.
Cuando ejecutas el asistente de instalación de PrestaShop, te pedirá estos cuatro campos. Si no los tienes preparados, el proceso fallará.
[TIP]: Si tu hosting usa Syspanel (antes conocido como HestiaCP), recuerda que el acceso a este panel se realiza a través del puerto 2106. La lógica para crear bases de datos es similar, pero la interfaz es más simple.
Paso 1: Crear la base de datos en cPanel
cPanel es el panel más popular del mundo. Su interfaz es de "iconos", lo que facilita encontrar las herramientas. Para conectar PrestaShop a MySQL, primero debemos crear el espacio de almacenamiento.
Localizando el asistente de bases de datos MySQL
Dentro de tu cPanel, busca la sección llamada "Bases de Datos". Ahí verás dos opciones clave: "Asistente para bases de datos MySQL" y "Bases de datos MySQL". Te recomiendo usar el Asistente, ya que te guía paso a paso.
Creando la base de datos y el usuario
- Haz clic en "Asistente para bases de datos MySQL".
- En el primer paso, escribe un nombre para tu base de datos. El sistema añadirá automáticamente un prefijo (generalmente tu nombre de usuario). Anota el nombre completo, porque lo necesitarás luego.
- Haz clic en "Siguiente paso".
- Ahora crea un usuario. Introduce un nombre de usuario y una contraseña segura. cPanel tiene un generador de contraseñas; úsalo para evitar errores de seguridad.
- Haz clic en "Crear usuario".
Asignando privilegios al usuario
Este es el paso más importante. Sin permisos, el usuario no podrá tocar la base de datos.
- En la siguiente pantalla, verás un menú desplegable para seleccionar la base de datos y el usuario que acabas de crear.
- Selecciona ambos y haz clic en "Agregar".
- Marca la casilla "TODOS LOS PRIVILEGIOS" (o ALL PRIVILEGES). PrestaShop necesita crear tablas, modificarlas y borrarlas durante su funcionamiento.
- Haz clic en "Realizar cambios".
[WARNING]: No asignes nunca una base de datos a dos usuarios diferentes si no sabes lo que haces. Esto puede corromper los datos de PrestaShop.
Paso 2: Crear la base de datos en Plesk
Plesk tiene una interfaz más moderna y orientada a pestañas. Aunque el proceso es ligeramente diferente, el resultado es el mismo: obtener los datos de conexión para PrestaShop.
Accediendo al gestor de bases de datos
Dentro de tu panel de Plesk, busca en el menú lateral izquierdo la opción "Bases de datos". Si no la ves, puede estar dentro de la pestaña "Sitios web y dominios".
Añadiendo una nueva base de datos
- Haz clic en el botón "Agregar base de datos" (o Add Database).
- En el campo "Nombre de la base de datos", escribe un nombre descriptivo, por ejemplo,
tienda_prestashop. - En el campo "Tipo de base de datos", asegúrate de seleccionar MySQL.
- En la sección de "Servidor de bases de datos", deja el que viene por defecto (suele ser
localhost). - Verás una sección para crear un nuevo usuario. Marca la casilla "Crear nuevo usuario".
- Introduce un nombre de usuario y una contraseña segura. Plesk te permite mostrar la contraseña en texto plano; hazlo y guárdala en un lugar seguro.
- Haz clic en "Aceptar".
Plesk, a diferencia de cPanel, suele asignar automáticamente todos los privilegios al usuario recién creado. No necesitas configurar permisos manualmente en la mayoría de los casos.
[INFO]: Tanto en cPanel como en Plesk, el host o servidor de la base de datos suele ser localhost. Sin embargo, si tu hosting es de gama alta o usas un servicio externo como Amazon RDS, el host será una URL larga y complicada. Verifica este dato en tu correo de bienvenida del hosting.
Paso 3: El asistente de instalación de PrestaShop
Una vez que tienes los datos de la base de datos, es hora de ejecutar el instalador. Sube los archivos de PrestaShop a tu servidor (generalmente a la carpeta public_html o httpdocs) y abre tu dominio en el navegador.
Configurando los parámetros de la base de datos
El asistente te pedirá los datos en la sección "Información de la base de datos". Aquí es donde debes introducir lo que creaste en los pasos anteriores.
- Motor de base de datos: Deja seleccionado
MySQL(oMySQLisi te lo pide). - Dirección del servidor: Escribe
localhost(o el host que te haya dado tu proveedor). - Nombre de la base de datos: Copia exactamente el nombre que viste en cPanel/Plesk, incluyendo el prefijo (ej:
usuario_prestashop). - Usuario de la base de datos: Escribe el usuario que creaste.
- Contraseña: Introduce la contraseña correspondiente.
- Prefijo de las tablas: Déjalo como
ps_por defecto, a menos que quieras personalizarlo por seguridad.
Haz clic en "Comprobar ahora". Si todo está bien, verás una marca verde de verificación. Si no, el sistema te dirá qué campo es incorrecto.
Paso 4: Configuración manual mediante el archivo parameters.php
¿Qué pasa si ya tienes PrestaShop instalado y necesitas cambiar la conexión a otra base de datos? Aquí es donde entra el archivo de configuración.
¿Dónde se encuentra este archivo?
El archivo se llama parameters.php y se encuentra en la carpeta app/config/ de tu instalación de PrestaShop.
Editando los parámetros de conexión
Debes abrir este archivo con un editor de texto (como Notepad++ o el editor de archivos de cPanel) y buscar el bloque que dice 'database_host', 'database_name', 'database_user' y 'database_password'.
Si necesitas conectar PrestaShop a una base de datos diferente (por ejemplo, tras una migración), modifica estos valores:
'database_host' => 'localhost',
'database_name' => 'tu_nueva_base',
'database_user' => 'tu_nuevo_usuario',
'database_password' => 'tu_nueva_clave',
[WARNING]: Antes de editar este archivo, haz una copia de seguridad del original. Un error de sintaxis (una coma o una comilla mal puesta) dejará tu tienda completamente inaccesible.
Errores comunes al conectar PrestaShop a MySQL
Es muy frustrante ver un error en pantalla. Aquí te dejo los más comunes y cómo solucionarlos.
Error: "No se puede conectar al servidor de base de datos"
Este error suele aparecer en el asistente de instalación.
- Causa 1: El host es incorrecto. Prueba a cambiar
localhostpor127.0.0.1. - Causa 2: El servidor MySQL está caído. Contacta con tu proveedor de hosting.
- Causa 3: Firewall bloqueando el puerto 3306. Esto es raro en hosting compartido, pero posible en servidores VPS.
Error: "Acceso denegado para el usuario"
Esto significa que el usuario o la contraseña no son correctos, o que el usuario no tiene permisos sobre esa base de datos.
- Revisa que no haya espacios en blanco al copiar la contraseña.
- Vuelve a cPanel y verifica que el usuario esté agregado a la base de datos con TODOS LOS PRIVILEGIOS.
Error: "Base de datos no encontrada"
- Asegúrate de que el nombre de la base de datos incluya el prefijo del panel (ej:
usuario_nombre). En Plesk, a veces no se añade prefijo, pero en cPanel siempre se añade.
Preguntas frecuentes (FAQ) sobre PrestaShop y MySQL
¿Puedo usar una base de datos MySQL existente para PrestaShop?
Sí, pero es muy desaconsejable si esa base ya contiene datos de otra aplicación. PrestaShop creará sus propias tablas (con prefijo ps_). Si la base tiene tablas con el mismo nombre, dará error. Es mejor crear una nueva base limpia.
¿Qué pasa si mi hosting usa Syspanel en lugar de cPanel o Plesk?
Como mencioné antes, Syspanel (HestiaCP) es otro panel. El acceso es por el puerto 2106. Dentro de Syspanel, busca la sección "Bases de datos" en el menú superior. El proceso es muy similar: creas la base, creas el usuario y vinculas ambos. La única diferencia es que Syspanel suele pedir que elijas el usuario y la base a la vez en un solo formulario.
¿Es lo mismo MySQL y MariaDB?
Para PrestaShop, sí. MariaDB es un clon mejorado de MySQL. Si tu hosting usa MariaDB, selecciona la opción MySQL en el asistente de instalación, ya que es compatible.
¿Cómo sé si mi conexión es correcta sin instalar todo?
Puedes usar la herramienta phpMyAdmin que viene en cPanel y Plesk. Intenta iniciar sesión en phpMyAdmin con el usuario y contraseña que creaste. Si puedes ver la base de datos vacía, la conexión es correcta.
Consejos finales para una instalación exitosa
- Usa contraseñas seguras: No uses "admin123". Una base de datos comprometida significa una tienda comprometida.
- Anota todo: Guarda los datos de conexión en un gestor de contraseñas. Los necesitarás para futuras actualizaciones.
- Prueba la conexión antes de subir archivos: Si tienes acceso a phpMyAdmin, crea una tabla de prueba y bórrala. Esto verifica que el usuario tiene permisos de escritura.
- Copia de seguridad: Antes de tocar el
parameters.php, descarga una copia del archivo original a tu ordenador.
Conectar PrestaShop a una base de datos MySQL es un proceso que, una vez entendido, te llevará menos de 5 minutos. La clave está en entender la relación entre el usuario, la base y los permisos. Tanto en cPanel como en Plesk, el flujo es lógico: crear el contenedor, crear la llave y abrir la puerta.
Si sigues estos pasos al pie de la letra, tu tienda online estará funcionando sin problemas de conexión. Recuerda que la mayoría de los errores se deben a pequeños descuidos tipográficos al copiar los nombres de usuario o bases de datos. Tómate tu tiempo y verifica dos veces cada dato.
