Cómo conectar PrestaShop a tu base de datos MySQL: guía paso a paso
¿Qué necesitas para conectar PrestaShop a MySQL?
Antes de lanzarnos a la configuración, es importante que entiendas qué piezas necesitas tener a mano. Conectar PrestaShop a MySQL no es complicado, pero requiere que tengas ciertos datos preparados. Si los tienes a la vista, el proceso te llevará menos de cinco minutos.
Esto es lo que vas a necesitar:
- Nombre del servidor MySQL (normalmente
localhosto127.0.0.1si tu tienda y la base de datos están en el mismo hosting). - Usuario de la base de datos (el que creaste en tu panel de control, por ejemplo,
admin_tienda). - Contraseña del usuario (asegúrate de que sea segura y de tenerla copiada).
- Nombre de la base de datos (por ejemplo,
tienda_prestashop). - Prefijo de las tablas (por defecto suele ser
ps_, pero puede variar). - Acceso al panel de archivos de tu hosting (por FTP, gestor de archivos o un panel como Syspanel).
[INFO] Si tu hosting usa Syspanel, recuerda que el acceso al gestor de archivos y a las bases de datos lo harás desde el puerto 2106. Es un detalle que muchos olvidan y luego no encuentran la opción.
¿Por qué PrestaShop necesita una base de datos MySQL?
PrestaShop es una plataforma de comercio electrónico que guarda absolutamente toda la información en una base de datos MySQL. Productos, clientes, pedidos, configuraciones, idiomas, módulos... Todo vive en tablas dentro de esa base de datos.
Sin una conexión correcta, tu tienda simplemente no puede funcionar. Verás errores como "Error de conexión con la base de datos" o pantallas en blanco. Por eso, entender cómo se realiza esta conexión es clave para administrar tu tienda sin sustos.
Métodos para conectar PrestaShop a MySQL
Existen dos métodos principales para conectar PrestaShop a tu base de datos MySQL:
- Durante la instalación: cuando instalas PrestaShop por primera vez, el asistente te pide estos datos.
- Después de la instalación: si ya tienes la tienda funcionando y necesitas cambiar la base de datos (por ejemplo, al migrar de servidor), tendrás que editar un archivo llamado
parameters.inc.php.
En esta guía nos centraremos en ambos casos, pero haremos especial hincapié en el segundo, que es el que más dudas genera.
Conectar PrestaShop a MySQL durante la instalación
Si estás instalando PrestaShop desde cero, el asistente de instalación te guiará paso a paso. Llegará un momento en el que verás una pantalla titulada "Configuración de la base de datos". Aquí debes rellenar los datos que te mencioné antes.
Paso 1: Accede al instalador de PrestaShop
Sube los archivos de PrestaShop a tu servidor mediante FTP o el gestor de archivos de tu hosting. Luego, abre tu navegador y escribe la URL de tu dominio. El instalador se abrirá automáticamente.
Paso 2: Rellena los datos de conexión MySQL
Cuando llegues a la sección de la base de datos, verás un formulario con estos campos:
- Dirección de la base de datos: escribe
localhostsi la base de datos está en el mismo servidor. Si usas un servidor externo, pon la IP o el dominio del servidor MySQL. - Puerto: normalmente es el
3306. Si tu hosting usa otro puerto, te lo habrán indicado. - Usuario de la base de datos: el nombre del usuario con permisos sobre la base de datos.
- Contraseña: la contraseña de ese usuario.
- Nombre de la base de datos: el nombre que le diste a tu base de datos.
- Prefijo de las tablas: si no sabes cuál usar, deja
ps_. Es el estándar.
Paso 3: Comprueba la conexión
El instalador tiene un botón que dice "Comprobar la conexión". Haz clic en él. Si todo es correcto, verás un mensaje de éxito y podrás continuar con la instalación.
[WARNING] Si el instalador te muestra un error, revisa que el usuario tenga todos los privilegios sobre la base de datos. Un error muy común es que el usuario solo tenga permisos de lectura y no de escritura.
Conectar PrestaShop a MySQL editando parameters.inc.php
Este es el método que usarás cuando tu tienda ya está creada y necesitas cambiar la base de datos. Es el caso típico de una migración a un nuevo servidor o de un cambio de hosting.
¿Qué es parameters.inc.php?
Es el archivo de configuración principal de PrestaShop. Contiene los datos de conexión a tu base de datos MySQL, entre otras configuraciones críticas. Se encuentra en la carpeta config de tu instalación de PrestaShop.
La ruta completa suele ser:
/config/parameters.inc.php(en PrestaShop 1.7 y versiones posteriores).- En versiones antiguas (1.6), el archivo se llamaba
settings.inc.php.
Paso 1: Localiza y descarga el archivo
Accede a tu hosting mediante FTP o el gestor de archivos. Navega hasta la carpeta config y busca el archivo parameters.inc.php. Descárgalo a tu ordenador para editarlo con seguridad.
Paso 2: Haz una copia de seguridad
Antes de tocar nada, haz una copia de seguridad del archivo original. Si algo sale mal, podrás restaurarlo fácilmente.
[TIP] Guarda una copia en tu ordenador y otra en la nube. Nunca está de más tener doble respaldo.
Paso 3: Edita el archivo con un editor de texto
Abre el archivo con un editor de texto plano como Notepad++ (Windows), Sublime Text o incluso el Bloc de notas. No uses procesadores de texto como Word, porque pueden alterar el formato.
Busca las líneas que contienen los parámetros de conexión. Verás algo similar a esto:
'database_host' => 'localhost',
'database_port' => '3306',
'database_name' => 'tu_base_de_datos',
'database_user' => 'tu_usuario',
'database_password' => 'tu_contraseña',
'database_prefix' => 'ps_',
Paso 4: Cambia los valores
Ahora solo tienes que sustituir los valores por los de tu nueva base de datos. Asegúrate de que cada línea esté entre comillas simples y que termines con una coma, tal como está en el original.
Por ejemplo:
'database_host' => 'localhost',
'database_port' => '3306',
'database_name' => 'nueva_tienda',
'database_user' => 'nuevo_usuario',
'database_password' => 'nueva_contraseña_segura',
'database_prefix' => 'ps_',
Paso 5: Sube el archivo modificado
Guarda el archivo y súbelo de nuevo a la carpeta config de tu servidor, reemplazando el original. Si tu hosting usa Syspanel, recuerda que el acceso por FTP o gestor de archivos se hace a través del puerto 2106.
Paso 6: Verifica la conexión
Abre tu tienda en el navegador. Si la conexión es correcta, la tienda cargará con normalidad. Si hay algún error, verás un mensaje como "Error de conexión con la base de datos" o "MySQL server has gone away".
[WARNING] Nunca edites el archivo mientras la tienda está siendo visitada por usuarios. Es mejor hacerlo en horas de bajo tráfico o activando el modo mantenimiento de PrestaShop.
Errores MySQL comunes en PrestaShop y cómo solucionarlos
Conectar PrestaShop a MySQL puede dar problemas si algo no está bien configurado. Aquí tienes los errores más frecuentes y sus soluciones.
Error: "Error de conexión con la base de datos"
Este es el error más común. Significa que PrestaShop no puede establecer una conexión con MySQL.
Posibles causas y soluciones:
- Datos incorrectos en parameters.inc.php: revisa que el usuario, la contraseña y el nombre de la base de datos sean correctos.
- El servidor MySQL no está disponible: verifica que el servicio MySQL esté activo en tu hosting.
- El puerto es incorrecto: si usas un puerto diferente al
3306, asegúrate de haberlo especificado. - El usuario no tiene permisos: comprueba que el usuario tenga todos los privilegios sobre la base de datos.
Error: "Access denied for user 'usuario'@'localhost'"
Este error indica que el usuario no tiene permiso para conectarse a la base de datos desde esa dirección IP.
Soluciones:
- Verifica que el usuario esté creado correctamente en MySQL.
- Asegúrate de que el usuario tenga permisos sobre la base de datos específica.
- Si usas un hosting compartido, es posible que el usuario solo pueda conectarse desde
localhost.
Error: "Unknown database 'nombre_base_datos'"
Este error significa que la base de datos que especificaste no existe.
Soluciones:
- Comprueba que el nombre de la base de datos esté bien escrito.
- Verifica que la base de datos se haya creado en tu panel de control.
- Si acabas de crear la base de datos, espera unos minutos para que se propague en el servidor.
Error: "MySQL server has gone away"
Este error suele aparecer cuando hay un problema con los límites de conexión o el tamaño de los paquetes.
Soluciones:
- Aumenta el valor de
max_allowed_packeten la configuración de MySQL. - Revisa los límites de conexiones simultáneas de tu hosting.
- Si el problema persiste, contacta con tu proveedor de hosting.
Consejos para una conexión segura y estable
Conectar PrestaShop a MySQL no es solo cuestión de que funcione, sino de que funcione bien. Aquí tienes algunos consejos extra:
- Usa contraseñas fuertes para el usuario de la base de datos. Nada de "123456" o "admin".
- No uses el usuario root de MySQL para tu tienda. Crea un usuario específico con permisos solo sobre la base de datos de PrestaShop.
- Realiza copias de seguridad periódicas de tu base de datos. PrestaShop tiene un módulo para ello, pero también puedes hacerlo desde el panel de control de tu hosting.
- Mantén PrestaShop actualizado para evitar vulnerabilidades de seguridad.
- Si migras de servidor, asegúrate de importar la base de datos completa antes de cambiar el archivo
parameters.inc.php.
Preguntas frecuentes (FAQ)
¿Puedo cambiar la base de datos sin perder mis productos y pedidos?
Sí, siempre que exportes la base de datos antigua y la importes en la nueva antes de cambiar la configuración. El proceso es: exportar la base de datos antigua, crear la nueva, importar los datos y luego editar parameters.inc.php.
¿Qué hago si no encuentro el archivo parameters.inc.php?
En PrestaShop 1.6, el archivo se llama settings.inc.php y está en la carpeta config. En PrestaShop 1.7 y 8, se llama parameters.inc.php. Si no lo encuentras, asegúrate de estar mirando en la carpeta correcta.
¿Es lo mismo "localhost" que "127.0.0.1"?
Sí, en la mayoría de los casos son equivalentes. localhost es un nombre que apunta a 127.0.0.1 (la dirección IP local). Algunos servidores MySQL configuran usuarios específicos para cada uno, así que prueba ambos si tienes problemas.
¿Puedo usar una base de datos MySQL externa para PrestaShop?
Sí, es posible. Solo tendrás que indicar la IP o el dominio del servidor MySQL externo y asegurarte de que el puerto 3306 esté abierto en el firewall. Sin embargo, esto puede ralentizar la conexión si el servidor está lejos.
¿Qué es el prefijo de las tablas y puedo cambiarlo?
El prefijo es un texto que se añade al principio del nombre de cada tabla de la base de datos. Por defecto es ps_. Puedes cambiarlo, pero si ya tienes la tienda funcionando, tendrás que renombrar todas las tablas, lo cual es un proceso delicado. Mejor déjalo como está.
¿Necesito conocimientos avanzados para editar parameters.inc.php?
No, es un archivo de texto plano. Con un editor de texto y siguiendo esta guía, cualquier persona puede editarlo. Solo ten cuidado de no borrar otras líneas o añadir caracteres extraños.
Conclusión
Conectar PrestaShop a tu base de datos MySQL es un proceso sencillo si sabes exactamente qué datos necesitas y dónde introducirlos. Ya sea durante la instalación o editando el archivo parameters.inc.php, lo importante es tener a mano el usuario, la contraseña, el nombre de la base de datos y el puerto correcto.
Recuerda que los errores más comunes se deben a datos mal escritos, permisos insuficientes o problemas con el servidor MySQL. Si sigues los pasos de esta guía y revisas los errores típicos, tu tienda estará funcionando en un abrir y cerrar de ojos.
[INFO] Si tu hosting utiliza Syspanel, no olvides que el acceso al panel de control y a las herramientas de gestión se realiza a través del puerto 2106. Este detalle te ahorrará más de un quebradero de cabeza.
Ahora ya sabes cómo conectar PrestaShop a MySQL. ¡Ponlo en práctica y tu tienda online estará lista para vender sin interrupciones!
