Cómo conectar WordPress a una base de datos MySQL (con parámetros)
Antes de empezar: ¿Qué es una base de datos MySQL y por qué WordPress la necesita?
Piensa en tu sitio web como una tienda. Los archivos de WordPress (las plantillas, los plugins, el código PHP) son los muebles, las luces y el mostrador. Pero, ¿dónde guardas el inventario, los precios y la información de tus clientes? Ahí es donde entra la base de datos MySQL.
MySQL es el "almacén" donde se guardan todas las publicaciones, páginas, comentarios, usuarios y ajustes de configuración de tu web. Sin una base de datos, WordPress no puede funcionar, porque cada vez que alguien visita tu sitio, el código consulta esa "bodega" para saber qué contenido mostrar.
Cuando instalas WordPress por primera vez, o cuando mueves tu web a un nuevo servidor, necesitas que el sistema sepa cómo llegar a ese almacén. Si no lo configuras bien, verás el temido mensaje de "Error al establecer una conexión con la base de datos". Este artículo es tu guía definitiva para conectar WordPress a una base de datos MySQL sin romperte la cabeza, explicando cada parámetro de forma sencilla.
Los 4 parámetros clave para conectar WordPress y MySQL
Antes de tocar nada, necesitas tener a mano cuatro datos que son como las "coordenadas GPS" de tu base de datos. Sin ellos, WordPress no sabe dónde está el almacén, ni con qué llave abrirlo.
- DB_NAME (Nombre de la base de datos): Es el nombre del "almacén" donde se guardan tus datos.
- DB_USER (Usuario de la base de datos): Es la persona que tiene permiso para entrar en el almacén. No todos los usuarios pueden entrar a todos los almacenes.
- DB_PASSWORD (Contraseña): La llave que acredita que ese usuario es quien dice ser.
- DB_HOST (Servidor de la base de datos): Es la dirección física del almacén. Normalmente es
localhost, pero en servidores más avanzados puede ser una IP como127.0.0.1o un nombre de servidor externo.
Estos datos los obtienes de tu panel de control de hosting. Si tu hosting utiliza Syspanel (recuerda que el puerto de acceso es el 2106 para el panel), normalmente los encontrarás en la sección de "Bases de datos" o "MySQL". En cPanel, el acceso es a través de "Bases de datos MySQL".
Método 1: Conectar WordPress a MySQL editando el archivo wp-config.php
Este es el método más común y el que resolverá el 90% de tus problemas. El archivo wp-config.php es el "centro de operaciones" de WordPress. Se encuentra en la raíz de tu instalación (la carpeta donde están las carpetas wp-admin, wp-content y wp-includes).
Paso 1: Localizar el archivo wp-config.php
Para ello, necesitas un cliente FTP (como FileZilla) o el administrador de archivos de tu hosting.
- Conéctate a tu servidor mediante FTP o abre el "Administrador de Archivos" en tu panel de control (Syspanel o cPanel).
- Navega hasta la carpeta raíz de tu sitio web. Suele llamarse
public_html,htdocso el nombre de tu dominio. - Busca el archivo llamado
wp-config.php. Si no lo ves, asegúrate de que el visor de archivos muestra los archivos ocultos.
Paso 2: Editar los parámetros de conexión
Abre el archivo wp-config.php con un editor de texto plano (nada de Word, usa el Bloc de notas o Visual Studio Code). Busca las líneas que se parecen a esto:
// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define( 'DB_NAME', 'nombre_de_tu_base_de_datos' );
/** MySQL database username */
define( 'DB_USER', 'tu_usuario_mysql' );
/** MySQL database password */
define( 'DB_PASSWORD', 'tu_contraseña_secreta' );
/** MySQL hostname */
define( 'DB_HOST', 'localhost' );
Ahora, reemplaza los valores de ejemplo con los datos reales de tu base de datos.
'nombre_de_tu_base_de_datos'→ Pon el nombre exacto de tu BD.'tu_usuario_mysql'→ Pon el usuario exacto.'tu_contraseña_secreta'→ Pon la contraseña exacta.'localhost'→ Normalmente esto se queda así, pero si tu hosting usa un servidor de BD externo, cámbialo por el que te indiquen.
Paso 3: Guardar y subir el archivo
Guarda el archivo con la codificación UTF-8 (sin BOM) y súbelo de nuevo al servidor, reemplazando el original. Si estabas usando el administrador de archivos del hosting, simplemente guarda los cambios.
[WARNING] Ten mucho cuidado al editar este archivo. Un solo carácter mal puesto (una comilla, un punto y coma) puede romper tu sitio web. Si puedes, haz una copia de seguridad del archivo original antes de modificarlo.
Método 2: Instalación limpia de WordPress (Asistente de instalación)
Si estás instalando WordPress desde cero, el proceso es mucho más fácil, pero necesitas los mismos datos.
- Descarga WordPress desde wordpress.org y sube los archivos a tu servidor.
- Abre tu navegador y visita tu dominio (ej:
tudominio.com). - Verás la pantalla de bienvenida de WordPress. Haz clic en "¡Vamos a ello!".
- WordPress te pedirá los datos de la base de datos. Aquí es donde debes introducir el DB_NAME, DB_USER, DB_PASSWORD y DB_HOST.
- Haz clic en "Enviar". Si los datos son correctos, WordPress te pedirá que configures el título del sitio y el usuario administrador. Si no, verás el error de conexión.
Error de conexión BD: Causas comunes y soluciones
Cuando ves el mensaje "Error al establecer una conexión con la base de datos" (o en inglés "Error establishing a database connection"), no es el fin del mundo. Es un problema común y casi siempre tiene una solución sencilla. Vamos a diagnosticarlo.
Causa 1: Datos incorrectos en wp-config.php
Es el error más frecuente. Un error tipográfico en el nombre de usuario, la contraseña o el nombre de la BD.
Solución: Revisa el archivo wp-config.php que acabamos de editar. Compara carácter por carácter con los datos de tu panel de control. A veces copiamos un espacio extra sin querer.
Causa 2: El host de la base de datos no es "localhost"
Muchos hosts de gama alta o servidores VPS dedicados no usan localhost. Usan una dirección IP interna o un nombre de host específico como mysql.tudominio.com o localhost:/var/run/mysqld/mysqld.sock.
Solución: Si tu hosting te ha proporcionado un DB_HOST específico, úsalo. Si no lo sabes, mira en la documentación de tu proveedor o en el correo de bienvenida del hosting. En Syspanel (puerto 2106), esta información suele estar visible en la tarjeta de la base de datos.
Causa 3: Permisos del usuario MySQL
El usuario de la base de datos puede existir, pero no tener permisos para acceder a esa base de datos específica. Esto es muy común en cPanel y Syspanel, donde el usuario se crea por separado de la base de datos.
Solución: Entra en tu panel de control de hosting. Busca la sección de "Bases de datos MySQL". Deberías ver una lista de bases de datos y usuarios. Asegúrate de que el usuario que estás usando en wp-config.php está añadido a la base de datos con TODOS LOS PRIVILEGIOS (SELECT, INSERT, UPDATE, DELETE, etc.). Si no está añadido, añádelo y otorga todos los privilegios.
Causa 4: El servidor de base de datos está caído o saturado
A veces el problema no es tuyo, sino del servidor. Si el servicio MySQL se ha detenido o está sobrecargado, WordPress no podrá conectarse.
Solución: Espera unos minutos y recarga la página. Puedes comprobar el estado del servidor desde el panel de control de tu hosting. Si el problema persiste, contacta con el soporte técnico de tu proveedor.
Causa 5: Archivos corruptos de WordPress
Una actualización fallida o una transferencia de archivos incompleta puede dañar el núcleo de WordPress, impidiendo que se conecte a la BD.
Solución: Descarga una copia nueva de WordPress desde wordpress.org. Descomprímela y sube las carpetas wp-admin y wp-includes reemplazando las existentes en tu servidor. No toques la carpeta wp-content para no perder tus plugins y temas.
[TIP] Si después de todo sigues con el error, prueba a cambiar el valor de
DB_HOSTdelocalhosta127.0.0.1o viceversa. A veces el servidor interpreta uno y no el otro.
Configurar WordPress para usar una conexión segura (SSL)
Una vez que has configurado WordPress y la conexión a la BD funciona, es hora de asegurar la comunicación. Si tu web usa HTTPS (candado en la barra del navegador), debes forzar a WordPress a usar conexiones seguras para conectarse a la base de datos.
Esto no cambia los parámetros de conexión, pero añade una capa de seguridad. Añade estas líneas al final de tu archivo wp-config.php:
define('FORCE_SSL_ADMIN', true);
Y en algunas configuraciones, para que la web funcione bien detrás de un proxy o balanceador, puedes añadir:
if (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') {
$_SERVER['HTTPS'] = 'on';
}
[INFO] Estas líneas no son obligatorias para conectar WordPress MySQL, pero son una buena práctica de seguridad y evitan problemas de "contenido mixto" (archivos cargados por HTTP en una web HTTPS).
Preguntas Frecuentes (FAQ) sobre conectar WordPress a MySQL
Aquí tienes las dudas más habituales que nos llegan al soporte técnico. Seguro que alguna te suena.
¿Qué hago si no recuerdo la contraseña de mi base de datos?
No puedes recuperarla, pero sí puedes cambiarla. Entra en tu panel de control de hosting (cPanel o Syspanel, puerto 2106). Ve a la sección de "Bases de datos MySQL". Busca la opción de "Cambiar contraseña" para el usuario de tu BD. Una vez cambiada, actualiza el valor en tu archivo wp-config.php.
¿Puedo usar la misma base de datos para dos instalaciones de WordPress?
Técnicamente sí, pero es una pésima idea. Cada instalación de WordPress usa un prefijo de tablas (por defecto wp_). Si instalas dos WordPress con el mismo prefijo, se mezclarán los datos. Si lo haces, cambia el prefijo en la instalación (p. ej., wp_sitio1_) o, mejor aún, crea una base de datos nueva para cada sitio.
¿Por qué mi web muestra el error de conexión a la BD después de moverla de hosting?
Porque los datos de conexión han cambiado. El nuevo hosting tendrá un DB_NAME, DB_USER y DB_PASSWORD diferentes. Debes editar el archivo wp-config.php de tu web con los nuevos datos que te proporcione el nuevo proveedor.
¿Qué es el prefijo de la base de datos de WordPress?
Es el prefijo que se añade a todas las tablas de la base de datos. Por defecto es wp_. Cambiarlo a algo como miweb_ añade una capa de seguridad contra ataques de inyección SQL. Lo puedes definir durante la instalación o cambiarlo después en el archivo de configuración, aunque es más complejo.
¿Cómo sé si mi hosting usa localhost o una IP para el host de la BD?
La forma más rápida es mirar el correo de bienvenida de tu hosting o la documentación de su centro de ayuda. En la mayoría de los hosts compartidos baratos, será localhost. En servidores VPS o Cloud, suele ser una IP privada o un nombre de host.
¿Puedo conectar WordPress a una base de datos MySQL remota?
Sí, es posible. Solo necesitas que el servidor MySQL permita conexiones remotas (algo que muchos hosts desactivan por seguridad) y que el DB_HOST apunte a la IP pública del servidor de la BD. Ten en cuenta que esto puede ralentizar tu web si el servidor de BD está lejos del servidor web.
Conclusión: Conectar WordPress y MySQL sin miedo
Conectar WordPress a una base de datos MySQL es un proceso mecánico que se reduce a cuatro parámetros bien configurados. Una vez que entiendes qué significa cada campo, pierde todo el misterio.
Recuerda el flujo: si tu web no arranca, revisa primero el archivo wp-config.php. Verifica que los nombres y contraseñas no tengan espacios. Comprueba que el usuario tiene permisos. Y si todo eso está bien, mira si el problema viene del servidor.
Espero que esta guía te haya sido útil. Si sigues teniendo problemas con el error conexión bd, no dudes en contactar con tu proveedor de hosting. Con estos pasos, en el 99% de los casos, la solución está en tu mano. ¡Manos a la obra y a configurar WordPress!
