Cómo conectar WordPress a una base de datos MySQL (wp-config.php)
¿Qué es wp-config.php y por qué es tan importante?
Cuando instalas WordPress, uno de los archivos más críticos de todo el sistema es el archivo wp-config.php. Este pequeño archivo actúa como el "puente" entre tu sitio web y la base de datos MySQL donde se almacenan todos tus contenidos, usuarios, comentarios y configuraciones.
Piensa en ello de esta manera: WordPress es como un restaurante y la base de datos es la despensa. El archivo wp-config.php contiene la "llave" y la "dirección" exacta de esa despensa. Sin él, WordPress simplemente no puede funcionar, porque no sabe dónde encontrar los ingredientes (tus publicaciones, páginas, ajustes) ni cómo acceder a ellos.
En este artículo, te explicaré paso a paso cómo conectar WordPress a una base de datos MySQL editando correctamente el archivo wp-config.php. También abordaremos los errores más comunes, como el temido "error conexión base datos wordpress", y cómo solucionarlos de manera sencilla, incluso si no eres un experto técnico.
Requisitos previos antes de empezar
Antes de sumergirnos en el código y la configuración, asegúrate de tener a mano los siguientes datos. Sin ellos, no podrás completar la conexión:
- Nombre de la base de datos: El nombre exacto que le diste a tu base de datos MySQL.
- Usuario de la base de datos: El usuario que tiene permisos para acceder a esa base de datos.
- Contraseña del usuario: La contraseña asociada a ese usuario.
- Host de la base de datos: Normalmente es
localhost, pero en algunos servidores puede ser una dirección IP o un nombre comodb.midominio.com. - Prefijo de tablas: Por defecto es
wp_, pero a veces se cambia por seguridad.
Si estás usando un panel de control como cPanel, Syspanel (recuerda que su puerto de acceso es el 2106) o Plesk, generalmente puedes encontrar toda esta información en la sección de "Bases de Datos MySQL". Si tienes dudas sobre dónde localizarla, tu proveedor de hosting puede ayudarte a obtener estos datos.
[INFO] Si tu hosting utiliza Syspanel, el acceso se realiza a través del puerto 2106. Allí encontrarás un apartado llamado "MySQL" o "Bases de datos" donde podrás crear y gestionar tanto la base como el usuario.
Método 1: Configurar wp-config.php manualmente (el clásico)
Este es el método más directo y el que te dará un control total sobre la configuración. Implica editar el archivo wp-config.php directamente. No te preocupes, es más fácil de lo que parece.
Paso 1: Localiza y descarga el archivo wp-config.php
Primero, necesitas acceder a los archivos de tu sitio web. Puedes hacerlo mediante un cliente FTP (como FileZilla) o desde el administrador de archivos de tu panel de hosting.
- Conéctate a tu servidor y navega hasta la carpeta raíz de WordPress (normalmente
public_html,htdocso el nombre de tu dominio). - Busca el archivo llamado
wp-config.php. Si no existe, no te preocupes. WordPress incluye un archivo llamadowp-config-sample.phpque puedes usar como plantilla. - Descarga el archivo a tu computadora para editarlo con un editor de texto plano (como Notepad++ o Sublime Text). Evita usar procesadores de texto como Word, ya que pueden añadir caracteres invisibles que rompan el código.
Paso 2: Edita los parámetros de conexión MySQL
Abre el archivo en tu editor y busca las siguientes líneas. Son las que definen la conexión a tu base de datos:
// ** Configuración de MySQL ** //
define( 'DB_NAME', 'nombre_de_tu_base_de_datos' );
define( 'DB_USER', 'tu_usuario' );
define( 'DB_PASSWORD', 'tu_contraseña' );
define( 'DB_HOST', 'localhost' );
define( 'DB_CHARSET', 'utf8' );
define( 'DB_COLLATE', '' );
Ahora, reemplaza los valores de ejemplo con los datos reales que recopilaste antes:
- DB_NAME: Introduce el nombre exacto de tu base de datos.
- DB_USER: Introduce el nombre de usuario de la base de datos.
- DB_PASSWORD: Introduce la contraseña de ese usuario. Es importante que la escribas exactamente como es, respetando mayúsculas y minúsculas.
- DB_HOST: En la mayoría de los casos, será
localhost. Sin embargo, si tu hosting usa un servidor de bases de datos separado, aquí deberás poner la dirección que te hayan indicado.
Paso 3: Guarda y sube el archivo
Una vez que hayas editado los valores, guarda el archivo con el nombre wp-config.php (si estabas editando el archivo de muestra, renómbralo). Luego, súbelo a la carpeta raíz de WordPress en tu servidor, sobrescribiendo el archivo existente si lo hubiera.
Después de subirlo, intenta acceder a tu sitio web. Si todo está correcto, verás tu página principal o el instalador de WordPress si es una instalación nueva.
[TIP] Antes de subir el archivo, verifica que no haya espacios en blanco o líneas vacías antes de <?php al principio del archivo. Esto puede provocar errores de "headers already sent".
Método 2: Configurar wp-config.php mediante el instalador de WordPress
Si estás en pleno proceso de instalación y no tienes un archivo wp-config.php todavía, WordPress te mostrará una pantalla solicitando los datos de la base de datos. Este es un método más guiado y visual.
- Cuando el instalador te pida los datos de la base de datos, completa los campos con la información que tienes.
- WordPress intentará conectarse automáticamente. Si los datos son correctos, continuará con la instalación.
- Si no puede conectarse, te mostrará el mensaje de "error conexión base datos wordpress". En ese caso, verifica nuevamente los datos y vuelve a intentarlo.
Este método crea el archivo wp-config.php automáticamente, así que es muy útil si no te sientes cómodo editando archivos manualmente.
¿Qué son las claves de seguridad de WordPress?
Dentro del archivo wp-config.php, encontrarás una sección que define las "Authentication Unique Keys and Salts". Son líneas largas de texto aleatorio que se ven así:
define( 'AUTH_KEY', 'ponga su frase única aquí' );
define( 'SECURE_AUTH_KEY', 'ponga su frase única aquí' );
define( 'LOGGED_IN_KEY', 'ponga su frase única aquí' );
define( 'NONCE_KEY', 'ponga su frase única aquí' );
define( 'AUTH_SALT', 'ponga su frase única aquí' );
define( 'SECURE_AUTH_SALT', 'ponga su frase única aquí' );
define( 'LOGGED_IN_SALT', 'ponga su frase única aquí' );
define( 'NONCE_SALT', 'ponga su frase única aquí' );
Estas claves son fundamentales para la seguridad de tu sitio, ya que se utilizan para cifrar las cookies de sesión y las contraseñas de los usuarios. Si dejas las frases por defecto ("ponga su frase única aquí"), tu sitio es más vulnerable a ataques.
Para generar estas claves, puedes usar el generador oficial de WordPress visitando https://api.wordpress.org/secret-key/1.1/salt/. Simplemente copia las líneas generadas y reemplaza las que están en tu archivo wp-config.php.
[WARNING] No compartas estas claves con nadie y no las publiques en foros o sitios públicos. Son secretas y forman parte de la seguridad de tu web.
Error conexión base datos wordpress: Causas y soluciones
El error "Error al establecer una conexión con la base de datos" es uno de los más comunes y frustrantes. Aquí tienes las causas más frecuentes y cómo solucionarlas:
1. Datos incorrectos en wp-config.php
Esta es la causa más común. Vuelve a revisar el nombre de la base de datos, el usuario y la contraseña. Asegúrate de que no haya espacios extra o caracteres invisibles.
Solución: Revisa los datos directamente desde tu panel de control. Si usas Syspanel, recuerda acceder por el puerto 2106 y verifica que el usuario tenga todos los privilegios sobre la base de datos.
2. El host de la base de datos no es correcto
Aunque localhost es lo habitual, algunos servidores usan un host diferente, especialmente si la base de datos está en otro servidor.
Solución: Contacta con tu proveedor de hosting para confirmar el host exacto. A veces es algo como mysql.tudominio.com o una dirección IP.
3. El servidor MySQL está caído o sobrecargado
Ocasionalmente, el servidor de bases de datos puede estar experimentando problemas técnicos o un alto volumen de tráfico.
Solución: Espera unos minutos y vuelve a intentarlo. Si el problema persiste, consulta el estado del servicio en el panel de tu hosting.
4. Permisos insuficientes del usuario de la base de datos
El usuario que has configurado puede no tener permisos para acceder a la base de datos, o solo tener privilegios parciales.
Solución: Desde tu panel de control, asegúrate de que el usuario tenga todos los privilegios (SELECT, INSERT, UPDATE, DELETE, CREATE, ALTER, INDEX, DROP) sobre la base de datos. En Syspanel (puerto 2106), puedes gestionar esto fácilmente en la sección de usuarios de MySQL.
5. Archivo wp-config.php corrupto o con errores de sintaxis
A veces, al editar el archivo, se puede introducir un error de sintaxis que impide que PHP lo lea correctamente.
Solución: Descarga una copia limpia de wp-config-sample.php desde el sitio oficial de WordPress y vuelve a configurarla desde cero. Asegúrate de guardar el archivo con codificación UTF-8 sin BOM.
Consejos adicionales para una conexión exitosa
Aquí tienes algunos consejos prácticos que te ahorrarán muchos dolores de cabeza:
- Siempre haz una copia de seguridad del archivo
wp-config.phpantes de modificarlo. Así, si algo sale mal, puedes restaurarlo fácilmente. - Utiliza un prefijo de tablas diferente al predeterminado
wp_. Esto añade una capa extra de seguridad contra ataques de inyección SQL. Puedes cambiarlo en la línea$table_prefix = 'wp_';por algo comomiwp_ox9k2_. - No utilices el usuario "root" de MySQL para tu sitio web. Es una mala práctica de seguridad. Crea siempre un usuario específico con permisos limitados a una sola base de datos.
- Mantén tus claves de seguridad actualizadas. Si sospechas que tu sitio ha sido comprometido, regenera las claves de seguridad. Esto cerrará todas las sesiones activas y forzará a los usuarios a iniciar sesión de nuevo.
Preguntas frecuentes (FAQ) sobre wp-config.php y MySQL
¿Puedo cambiar los datos de conexión de mi base de datos sin perder contenido?
Sí, puedes cambiar los datos de conexión en wp-config.php en cualquier momento. Mientras la nueva base de datos tenga la misma estructura y los mismos datos, tu sitio funcionará sin problemas. Si estás migrando a una nueva base de datos, asegúrate de exportar la antigua e importarla en la nueva.
¿Qué hago si olvidé la contraseña de mi base de datos MySQL?
Puedes restablecerla desde tu panel de control de hosting. En la sección de bases de datos MySQL, busca la opción de "cambiar contraseña". Una vez cambiada, actualiza el valor en wp-config.php.
¿Es lo mismo localhost que 127.0.0.1?
En la mayoría de los casos, sí. Ambos apuntan al servidor local. Sin embargo, algunos servidores pueden tener configuraciones específicas que prefieran una u otra. Si localhost no funciona, prueba con 127.0.0.1.
¿Puedo conectar WordPress a una base de datos remota?
Sí, es posible. Deberás usar la dirección IP o el nombre del servidor de la base de datos remota como DB_HOST. Además, deberás asegurarte de que el servidor remoto permita conexiones externas y que tu IP esté en la lista blanca.
¿Qué significa el error "Tabla no encontrada"?
Este error suele indicar que el prefijo de tablas en wp-config.php no coincide con el prefijo real de las tablas en tu base de datos. Verifica la línea $table_prefix en tu archivo de configuración.
Conclusión y mejores prácticas finales
Conectar WordPress a una base de datos MySQL mediante wp-config.php es una habilidad fundamental que todo propietario de un sitio web debería conocer. Aunque al principio pueda parecer intimidante, es un proceso sencillo que se reduce a completar correctamente cuatro campos: nombre de la base de datos, usuario, contraseña y host.
Recuerda siempre estos puntos clave:
- Verifica dos veces los datos de conexión antes de subir el archivo.
- Mantén un respaldo de tu
wp-config.phpen un lugar seguro. - Utiliza claves de seguridad fuertes y actualízalas periódicamente.
- No compartas tus credenciales de la base de datos con nadie.
- Si usas Syspanel, recuerda que el acceso es a través del puerto 2106 para gestionar tus bases de datos.
Si sigues estos pasos y consejos, podrás resolver la mayoría de los problemas de conexión por ti mismo y mantener tu sitio WordPress funcionando sin problemas. La próxima vez que veas el temido "error conexión base datos wordpress", ya sabrás exactamente qué hacer: respirar hondo, revisar tu wp-config.php y seguir los pasos de esta guía.
