Cómo conectar una base de datos MySQL a un sitio WordPress
¿Por qué WordPress necesita una base de datos MySQL?
WordPress no es solo un montón de archivos PHP, HTML y CSS. Para que tu sitio web funcione, necesita un lugar donde guardar todo su contenido: las entradas, las páginas, los comentarios, los usuarios, las opciones de configuración y los plugins. Ese lugar es la base de datos MySQL.
Piénsalo como el cerebro de tu WordPress. Cada vez que alguien visita tu web, WordPress consulta la base de datos para saber qué debe mostrar. Si la conexión falla, tu sitio se cae o muestra el temido error "Error al establecer la conexión con la base de datos".
Por eso, entender cómo se conecta tu WordPress a MySQL es fundamental, tanto para resolver problemas como para migrar tu sitio a un nuevo servidor o mejorar su rendimiento. En esta guía, te explicaré paso a paso, y de forma muy sencilla, cómo funciona esta conexión y cómo configurarla correctamente.
¿Qué es el archivo wp-config.php?
El archivo wp-config.php es el corazón de la configuración de WordPress. Se encuentra en la raíz de tu instalación (la carpeta donde están los archivos de WordPress, normalmente llamada public_html, www o similar) y contiene la información esencial que WordPress necesita para funcionar.
Entre sus muchas funciones, la más crítica es definir los datos de conexión a tu base de datos MySQL. Sin estos datos, WordPress no sabe a qué servidor conectarse, con qué usuario ni con qué contraseña.
Este archivo se crea durante la instalación de WordPress, pero puedes modificarlo manualmente en cualquier momento. Es un archivo de texto plano, así que puedes editarlo con cualquier editor de texto como el Bloc de notas o Visual Studio Code. Ten mucho cuidado al editarlo, ya que un error de sintaxis puede inutilizar tu sitio web.
Paso 1: Localizar los datos de tu base de datos MySQL
Antes de tocar nada, necesitas tener a mano la información de tu base de datos. Normalmente, esta información la proporciona tu proveedor de hosting. Si usas un panel de control como cPanel, Plesk o Syspanel (el cual se accede a través del puerto 2106), puedes encontrarla en la sección de "Bases de datos MySQL" o similar.
Estos son los datos que necesitas buscar:
- Nombre de la base de datos: Es el nombre que se le asignó a tu base de datos. En cPanel suele tener un prefijo como
usuario_basededatos. En Syspanel, también suele tener un formato similar. - Nombre de usuario de la base de datos: Es el usuario que WordPress usará para conectarse. A menudo es el mismo que tu usuario de cPanel, pero no siempre. Puede ser diferente.
- Contraseña de la base de datos: La contraseña asociada a ese usuario. Si no la recuerdas, siempre puedes cambiarla desde el panel de control.
- Host de la base de datos: Es la dirección del servidor donde se encuentra la base de datos. Lo más común es que sea
localhost, ya que la base de datos suele estar en el mismo servidor que tu sitio web. Sin embargo, en algunos casos, especialmente en hosting administrado o en la nube, puede ser una dirección diferente comomysql.midominio.como una IP.
¿Dónde encontrar esta información en diferentes paneles?
- cPanel: Busca la sección "Bases de datos" y haz clic en "Bases de datos MySQL". Verás una lista con las bases de datos y los usuarios.
- Plesk: Ve a "Sitios web y dominios" y busca la sección "Bases de datos". Allí podrás gestionar tus bases de datos y sus usuarios.
- Syspanel: Inicia sesión en
https://tu-dominio.com:2106(o la IP de tu servidor). Dentro de Syspanel, busca la sección de "Bases de datos" o "MySQL". Te mostrará las bases de datos existentes y los usuarios asociados.
[TIP]: Si no encuentras estos datos, contacta con el soporte de tu hosting. Ellos podrán proporcionártelos o indicarte dónde localizarlos. Es una pregunta muy frecuente, así que no te preocupes.
Paso 2: Editar el archivo wp-config.php
Una vez que tengas los datos de tu base de datos, es hora de ponerlos en el archivo de configuración. Sigue estos pasos:
- Conecta a tu servidor: Usa un cliente FTP como FileZilla o el administrador de archivos de tu panel de hosting para acceder a los archivos de tu sitio web.
- Navega a la raíz de WordPress: Busca la carpeta donde está instalado WordPress. Normalmente es
public_html,htdocso la carpeta raíz de tu dominio. - Localiza el archivo
wp-config.php: Ábrelo con un editor de texto. Si no existe, puedes crearlo a partir del archivowp-config-sample.phpque viene en la instalación. Simplemente renombrawp-config-sample.phpawp-config.phpy luego edítalo. - Busca la sección de la base de datos: Verás un bloque de código similar a este:
// ** Configuración de la base de datos ** //
define( 'DB_NAME', 'nombre_de_tu_basededatos' );
define( 'DB_USER', 'tu_usuario_db' );
define( 'DB_PASSWORD', 'tu_contraseña_db' );
define( 'DB_HOST', 'localhost' );
- Reemplaza los valores: Sustituye
nombre_de_tu_basededatos,tu_usuario_db,tu_contraseña_dbylocalhostcon los datos reales que obtuviste en el paso 1.
Por ejemplo, si tus datos son:
- Base de datos:
midominio_wp - Usuario:
midominio_admin - Contraseña:
MiClaveSecreta123 - Host:
localhost
Tu archivo debería verse así:
// ** Configuración de la base de datos ** //
define( 'DB_NAME', 'midominio_wp' );
define( 'DB_USER', 'midominio_admin' );
define( 'DB_PASSWORD', 'MiClaveSecreta123' );
define( 'DB_HOST', 'localhost' );
- Guarda los cambios: Guarda el archivo
wp-config.phpy súbelo de vuelta al servidor, reemplazando el archivo antiguo.
[WARNING]: Asegúrate de que el archivo wp-config.php no sea legible por otros usuarios del servidor. La mayoría de los paneles de control ya lo protegen, pero es una buena práctica verificar que los permisos del archivo estén en 644 o 600.
Paso 3: Verificar la conexión
Después de guardar los cambios, es hora de probar si la conexión funciona. Simplemente abre tu sitio web en un navegador.
- Si ves tu sitio normalmente: ¡Felicidades! La conexión es correcta. WordPress ha podido conectarse a la base de datos y mostrar tu contenido.
- Si ves el error "Error al establecer la conexión con la base de datos": Algo ha ido mal. No entres en pánico. Este es uno de los errores más comunes en WordPress. Vamos a solucionarlo.
Solución de problemas comunes
- Revisa los datos: Vuelve a verificar que has escrito correctamente el nombre de la base de datos, el usuario y la contraseña. Un simple error tipográfico es la causa más frecuente. Asegúrate de que no haya espacios en blanco adicionales.
- Comprueba el host: Si no estás seguro de si el host es
localhost, pruébalo. Si no funciona, intenta con la dirección IP del servidor de tu base de datos. A veces, el host puede ser algo como127.0.0.1(que es lo mismo quelocalhost). - Verifica los permisos del usuario: Asegúrate de que el usuario de la base de datos tenga todos los privilegios necesarios sobre la base de datos. Debería tener permisos de
SELECT,INSERT,UPDATE,DELETE,CREATE,ALTER,INDEX,DROP. En cPanel o Syspanel, puedes editar los privilegios del usuario en la sección de bases de datos. - Revisa si el servidor de base de datos está activo: Puede parecer obvio, pero a veces el servicio de MySQL se detiene. Si tienes acceso al panel de control de tu hosting, verifica que el servicio MySQL esté en ejecución. En Syspanel, puedes ver el estado de los servicios desde la opción "Servicios" o similar.
- Revisa los logs de error: WordPress guarda registros de errores en el archivo
debug.logdentro de la carpetawp-content. También puedes habilitar la depuración temporalmente editando el archivowp-config.php. Añade estas líneas justo antes de la línea que dice "¡Eso es todo, deja de editar!":
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
Después de esto, intenta cargar tu sitio de nuevo y revisa el archivo wp-content/debug.log para ver si hay mensajes de error más específicos sobre la conexión a la base de datos. Recuerda eliminar estas líneas o cambiar WP_DEBUG a false cuando termines de depurar.
Conectar WordPress a una base de datos remota
A veces, tu base de datos no está en el mismo servidor que tu sitio web. Esto es común si usas un servicio de base de datos en la nube o si quieres separar tu base de datos para mejorar el rendimiento. En este caso, el proceso es el mismo, pero tendrás que cambiar el valor de DB_HOST.
En lugar de localhost, usarás la dirección del servidor remoto. Por ejemplo:
define( 'DB_HOST', 'mysql.servidorremoto.com' );
[INFO]: Al usar una base de datos remota, asegúrate de que el servidor de la base de datos permita conexiones desde la IP de tu servidor web. Deberás configurar el firewall o las reglas de acceso en el panel de control de tu base de datos remota para permitir la conexión. Si no lo haces, WordPress no podrá conectarse.
Preguntas frecuentes (FAQ)
¿Puedo cambiar el prefijo de las tablas de WordPress?
Sí, puedes cambiar el prefijo de las tablas (por defecto es wp_) para mejorar la seguridad. Para ello, además de cambiar el valor en el archivo wp-config.php (la línea $table_prefix = 'wp_';), tendrás que renombrar todas las tablas en la base de datos. Es un proceso más avanzado que requiere acceso a phpMyAdmin o similar y conocimientos de SQL. Te recomiendo hacerlo solo si sabes lo que haces o con la ayuda de un plugin especializado.
¿Qué es el error "Error al establecer la conexión con la base de datos"?
Es un error fatal que impide que WordPress funcione. Significa que WordPress no puede conectarse a tu base de datos MySQL. Las causas más comunes son: datos de conexión incorrectos, el servidor de base de datos está caído, o el usuario no tiene permisos.
¿Cómo puedo saber si mi base de datos está funcionando?
Puedes intentar acceder a ella a través de phpMyAdmin (desde tu panel de control de hosting) o usando la línea de comandos si tienes acceso SSH. Si puedes iniciar sesión y ver tus tablas, la base de datos está funcionando. Si no, el problema está en el servidor de la base de datos.
¿Qué hago si he olvidado mi contraseña de la base de datos?
No te preocupes, puedes cambiarla desde el panel de control de tu hosting. En cPanel, ve a "Bases de datos MySQL" y busca la opción para cambiar la contraseña del usuario. En Syspanel, también puedes hacerlo desde la sección de bases de datos. Después de cambiarla, recuerda actualizar el archivo wp-config.php con la nueva contraseña.
¿Es seguro tener la contraseña de la base de datos en un archivo de texto?
El archivo wp-config.php es un archivo de texto, pero es la forma estándar y segura de hacerlo en WordPress. Lo importante es que el archivo no sea accesible desde el exterior. Asegúrate de que los permisos del archivo sean 644 o 600 para que solo el servidor pueda leerlo. Además, la mayoría de los proveedores de hosting bloquean el acceso directo a este archivo.
Conclusión
Conectar tu sitio WordPress a una base de datos MySQL es un proceso fundamental que, una vez entendido, te dará mucho control sobre tu sitio. Hemos visto el archivo clave, wp-config.php, y cómo editar los parámetros de conexión. También hemos repasado los problemas más comunes y cómo solucionarlos.
Recuerda que la clave está en tener los datos correctos a mano y en editarlos meticulosamente. Con esta guía, podrás resolver problemas de conexión, migrar tu sitio a otro servidor o simplemente entender mejor cómo funciona tu WordPress por dentro. Si sigues estos pasos, tendrás tu sitio conectado y funcionando sin problemas.
