¿Cómo conectar una base de datos a PrestaShop? Tutorial básico
¿Tienes una tienda en PrestaShop y necesitas conectar tu base de datos? Es un paso fundamental para que tu sitio funcione correctamente. No te preocupes, es más sencillo de lo que parece. En esta guía te explicaré todo lo que necesitas saber, desde los conceptos básicos hasta los pasos concretos para hacer la conexión en los paneles de control más comunes: cPanel, Plesk, DirectAdmin y Syspanel. Vamos a ello.
¿Qué es una base de datos y por qué PrestaShop la necesita?
Imagina que tu tienda online es una gran biblioteca. Los productos, clientes, pedidos y configuraciones son como los libros, las fichas de los socios y los registros de préstamos. La base de datos es el sistema de archivos donde se guarda toda esa información de forma ordenada. PrestaShop, al ser un gestor de contenidos dinámico, necesita una base de datos para almacenar y recuperar todo lo que hace funcionar tu tienda: desde el nombre de un producto hasta el historial de compras de un cliente.
Sin una base de datos correctamente conectada, tu PrestaShop no podría mostrar productos, procesar pedidos ni recordar los datos de tus usuarios. Por eso, conectar la base de datos es uno de los primeros pasos al instalar o migrar tu tienda.
Requisitos previos antes de conectar tu base de datos
Antes de lanzarte a conectar, asegúrate de tener a mano la siguiente información. La necesitarás durante el proceso:
- Nombre de la base de datos: El nombre que le asignaste al crearla (ej:
mitienda_presta). - Usuario de la base de datos: El usuario que tiene permisos para acceder a ella (ej:
mitienda_user). - Contraseña del usuario: La contraseña que elegiste para ese usuario.
- Servidor de base de datos: Normalmente es
localhost, pero en algunos alojamientos puede ser una dirección IP o un nombre comomysql.tudominio.com. Si no estás seguro,localhostes lo más común. - Prefijo de tablas: Un valor que se añade al inicio de cada tabla de la base de datos (ej:
ps_). Si no lo cambias, por defecto seráps_.
[INFO] Si no tienes estos datos, deberás crearlos primero desde el panel de control de tu hosting (cPanel, Plesk, DirectAdmin o Syspanel). Te explicaré cómo hacerlo más adelante.
Métodos para conectar tu base de datos a PrestaShop
Existen dos momentos clave en los que necesitarás conectar la base de datos:
- Durante la instalación inicial de PrestaShop. Es el asistente que te guía paso a paso.
- Si ya tienes PrestaShop instalado y necesitas cambiar la conexión (por ejemplo, al migrar a otro servidor). Esto se hace editando un archivo de configuración.
Ambos métodos son válidos y te los explico a continuación.
Conexión durante la instalación de PrestaShop
Este es el método más común. Cuando ejecutas por primera vez tu tienda (accediendo a tu dominio), el asistente de instalación te pedirá los datos de la base de datos en el paso de "Configuración de la base de datos". Simplemente rellena los campos con la información que tienes:
- Dirección del servidor de base de datos:
localhost(o el que te haya proporcionado tu hosting). - Nombre de la base de datos: El nombre que creaste.
- Usuario de la base de datos: El usuario que creaste.
- Contraseña de la base de datos: La contraseña de ese usuario.
- Prefijo de tablas: Déjalo como
ps_a menos que tengas una razón para cambiarlo.
Haz clic en "Siguiente" o "Probar conexión". Si todo está correcto, el instalador continuará. Si no, revisa que los datos sean exactos (mayúsculas, minúsculas, guiones bajos, etc.).
Conexión modificando el archivo de configuración (settings.inc.php)
Si ya tienes PrestaShop instalado y necesitas cambiar la base de datos (por ejemplo, porque migraste a un nuevo servidor), deberás editar un archivo llamado settings.inc.php. Este archivo se encuentra en la carpeta config de tu instalación de PrestaShop.
[WARNING] Antes de editar este archivo, siempre haz una copia de seguridad. Si te equivocas, tu tienda puede dejar de funcionar.
Para editarlo, necesitas acceder a tu servidor vía FTP o desde el administrador de archivos de tu panel de control. Una vez localices el archivo config/settings.inc.php, ábrelo con un editor de texto plano (como el Bloc de notas o Sublime Text). Verás líneas como estas:
define('_DB_SERVER_', 'localhost');
define('_DB_NAME_', 'nombre_base_datos');
define('_DB_USER_', 'usuario_base_datos');
define('_DB_PASSWD_', 'contraseña_base_datos');
define('_DB_PREFIX_', 'ps_');
Simplemente cambia los valores entre comillas por los nuevos datos de tu base de datos. Guarda el archivo y súbelo de nuevo al servidor (si lo editaste localmente). Después de esto, tu PrestaShop debería funcionar con la nueva base de datos.
Cómo crear y obtener los datos de conexión desde los paneles de control más comunes
Para conectar tu base de datos, primero debes tenerla creada. Aquí te explico cómo hacerlo en los paneles más usados.
Crear base de datos en cPanel
cPanel es uno de los paneles más populares. Sigue estos pasos:
- Inicia sesión en tu cPanel (normalmente
tudominio.com/cpanel). - Busca la sección Bases de Datos y haz clic en MySQL Databases.
- En Create New Database, escribe un nombre para tu base de datos (ej:
prestashop_db). Haz clic en Create Database. - Vuelve a la página principal de MySQL Databases. En Add New User, crea un usuario (ej:
presta_user) y una contraseña segura. Haz clic en Create User. - Ahora, en Add User to Database, selecciona el usuario y la base de datos que acabas de crear. Marca la casilla ALL PRIVILEGES y haz clic en Add.
[TIP] El nombre completo de tu base de datos y usuario suele incluir tu nombre de usuario de cPanel (ej: tuusuario_prestashop_db). Anótalo exactamente como aparece.
Crear base de datos en Plesk
Plesk es otro panel muy común, sobre todo en alojamientos Windows o Linux avanzados.
- Inicia sesión en Plesk (normalmente
tudominio.com:8443). - Ve a Websites & Domains y selecciona tu dominio.
- Busca la sección Databases y haz clic en Add Database.
- Ponle un nombre a tu base de datos (ej:
prestashop). Elige MySQL como tipo de base de datos. - Marca la opción Create a database user. Introduce un nombre de usuario y una contraseña.
- Haz clic en OK.
Los datos de conexión (servidor, nombre, usuario) los verás en la lista de bases de datos después de crearla.
Crear base de datos en DirectAdmin
DirectAdmin es un panel sencillo y eficiente, muy usado en hosting compartido.
- Inicia sesión en DirectAdmin (normalmente
tudominio.com:2222). - Busca la sección Account Manager y haz clic en MySQL Management.
- Haz clic en Create new database.
- Introduce un nombre para tu base de datos (ej:
prestashop). DirectAdmin te sugerirá un nombre completo (ej:usuario_prestashop). - Crea un usuario y una contraseña para la base de datos.
- Haz clic en Create.
[INFO] DirectAdmin suele asignar automáticamente todos los privilegios al usuario que creas.
Crear base de datos en Syspanel (antes HestiaCP)
Syspanel es una versión moderna y amigable de HestiaCP. Es importante que sepas que el acceso a Syspanel se realiza a través del puerto 2106 (ej: tudominio.com:2106).
- Accede a tu Syspanel:
https://tudominio.com:2106(o la IP de tu servidor). - Inicia sesión con tus credenciales de administrador.
- Ve a la sección Bases de datos (o Databases).
- Haz clic en Añadir base de datos (o Add Database).
- Introduce un nombre para tu base de datos (ej:
prestashop). El sistema te mostrará el nombre completo (ej:admin_prestashop). - Crea un usuario y una contraseña. Syspanel generará automáticamente un usuario basado en el nombre de la base de datos.
- Haz clic en Guardar o Añadir.
Los datos de conexión (servidor, nombre, usuario) aparecerán en la lista de bases de datos. El servidor suele ser localhost.
Solución de problemas comunes al conectar la base de datos
A veces, incluso siguiendo todos los pasos, pueden surgir problemas. Aquí tienes los más comunes y cómo solucionarlos.
Error: "No se puede conectar a la base de datos"
Este es el error más frecuente. Las causas principales son:
- Datos incorrectos: Revisa que el nombre de la base de datos, el usuario y la contraseña estén escritos exactamente como los creaste (mayúsculas, minúsculas, guiones bajos). A veces el panel de control añade un prefijo (ej:
tuusuario_). - Servidor incorrecto: Asegúrate de que el servidor de base de datos sea
localhosto el que te haya proporcionado tu hosting. En algunos casos, puede ser una dirección IP. - Usuario sin permisos: Verifica que el usuario tenga todos los privilegios (ALL PRIVILEGES) sobre la base de datos. En cPanel, esto se hace al añadir el usuario a la base de datos.
Error: "Tabla 'ps_...' no existe"
Este error suele aparecer si el prefijo de tablas no coincide con el que usó PrestaShop al crearlas. Revisa el archivo settings.inc.php y asegúrate de que el prefijo (ej: ps_) es el mismo que el que ves en las tablas de tu base de datos (puedes verlas desde phpMyAdmin).
Error: "Host '...' no está permitido conectar a este servidor MySQL"
Esto ocurre cuando el servidor MySQL no permite conexiones desde el servidor web. La solución más común es cambiar el host de conexión de localhost a 127.0.0.1 o, si tu hosting lo permite, añadir el servidor web a la lista de hosts permitidos en MySQL.
Preguntas frecuentes (FAQ) sobre la conexión de base de datos en PrestaShop
Aquí respondo a las dudas más habituales que nos llegan al soporte técnico.
¿Puedo usar la misma base de datos para dos instalaciones de PrestaShop?
No es recomendable. Cada instalación de PrestaShop debe tener su propia base de datos. Si usas la misma, los datos se mezclarán y causarán errores graves. Si necesitas varias tiendas, crea bases de datos separadas.
¿Qué hago si olvido la contraseña de mi base de datos?
Puedes cambiarla desde el panel de control de tu hosting. En cPanel, ve a MySQL Databases, busca la sección de usuarios y haz clic en Change Password. En Plesk, DirectAdmin y Syspanel, también hay opciones para cambiar la contraseña de un usuario de base de datos. Después de cambiarla, actualiza el archivo settings.inc.php con la nueva contraseña.
¿Es seguro usar 'localhost' como servidor de base de datos?
Sí, es totalmente seguro. localhost significa que la base de datos y el servidor web están en la misma máquina. Es la configuración más común y la más rápida, ya que no hay tráfico de red entre ellos.
¿Necesito conocimientos de programación para conectar la base de datos?
No. Como has visto, solo necesitas seguir los pasos indicados y tener los datos correctos. No toques nada del código de PrestaShop más allá del archivo settings.inc.php, y solo si es necesario.
Mi hosting usa Syspanel, ¿cómo accedo a phpMyAdmin?
En Syspanel, puedes acceder a phpMyAdmin desde el propio panel. Ve a la sección Bases de datos, busca la base de datos que creaste y haz clic en el icono de phpMyAdmin o en el enlace que dice "Acceder". Se abrirá una nueva ventana con la herramienta para gestionar tu base de datos.
[TIP] Recuerda que la dirección de acceso a Syspanel es tudominio.com:2106. No lo confundas con otros paneles.
Espero que esta guía te haya sido de gran ayuda. Conectar tu base de datos a PrestaShop es un proceso sencillo si tienes la información correcta y sigues los pasos adecuados. Si te surge cualquier otra duda, no dudes en contactar con nuestro equipo de soporte. ¡Buena suerte con tu tienda online!
