Cómo solucionar el error de conexión a la base de datos en Plesk
¿Te ha aparecido el temido mensaje de “Error al conectar con la base de datos” en tu panel Plesk? No te preocupes, es uno de los problemas más comunes y, por suerte, casi siempre tiene solución. En esta guía te explicaré paso a paso cómo diagnosticar y arreglar este error, tanto si usas MySQL como si tu servidor está basado en MariaDB. Vamos a ello.
¿Por qué ocurre un error de conexión a la base de datos en Plesk?
Antes de lanzarnos a las soluciones, es importante entender las causas más frecuentes. El error de conexión puede deberse a:
- Credenciales incorrectas: El usuario o la contraseña de la base de datos no coinciden con los que tiene configurados tu aplicación (WordPress, Joomla, etc.).
- Servicio MySQL/MariaDB detenido: El motor de base de datos no está funcionando en el servidor.
- Permisos de usuario revocados: El usuario de la base de datos ha perdido los privilegios sobre la base de datos.
- Archivo de configuración dañado: El archivo
wp-config.php(en WordPress) o similar tiene datos erróneos. - Problemas de red o firewall: El servidor de bases de datos no es accesible desde la aplicación.
- Límite de conexiones alcanzado: Demasiadas conexiones simultáneas saturan el servidor MySQL.
A continuación, te presento las soluciones ordenadas de la más sencilla a la más avanzada.
Solución 1: Verificar que el servicio MySQL/MariaDB esté activo
El primer paso es asegurarte de que el motor de base de datos esté funcionando. En Plesk, puedes hacerlo desde la interfaz gráfica.
Desde la interfaz de Plesk
- Inicia sesión en tu panel de Plesk.
- Ve a Herramientas y Ajustes (en el menú de la izquierda).
- En la sección Servicios, busca Administrador de servicios.
- Localiza el servicio MySQL o MariaDB (dependiendo de lo que uses).
- Verifica que su estado sea “En ejecución”. Si aparece “Detenido”, haz clic en el botón de Iniciar.
[TIP] Si el servicio se detiene constantemente, puede haber un problema de recursos o de configuración. En ese caso, revisa los logs del sistema en /var/log/mysql/error.log.
Desde la línea de comandos (SSH)
Si tienes acceso SSH al servidor, puedes comprobarlo rápidamente:
systemctl status mariadb
# o si usas MySQL:
systemctl status mysql
Si el servicio no está activo, inícialo con:
systemctl start mariadb
Solución 2: Comprobar las credenciales de la base de datos
El error más habitual es tener mal escritas las credenciales en el archivo de configuración de tu sitio web.
Para WordPress
- Accede al panel de Plesk y ve a Sitios web y dominios.
- Selecciona el dominio afectado y haz clic en Administrador de archivos.
- Navega hasta la raíz de tu sitio (normalmente
httpdocsopublic_html). - Busca el archivo wp-config.php y ábrelo con el editor de texto.
- Verifica las siguientes líneas:
Asegúrate de que coinciden exactamente con los datos de tu base de datos en Plesk (puedes verlos en Bases de datos dentro del dominio).define('DB_NAME', 'nombre_base_datos'); define('DB_USER', 'usuario_base_datos'); define('DB_PASSWORD', 'contraseña_base_datos'); define('DB_HOST', 'localhost');
[WARNING] Nunca uses comillas dobles en los valores de wp-config.php si no es necesario. Prefiere siempre comillas simples para evitar errores de parseo.
Para otras aplicaciones (Joomla, Drupal, etc.)
El proceso es similar: busca el archivo de configuración (por ejemplo, configuration.php en Joomla) y verifica los parámetros de conexión a la base de datos.
Solución 3: Revisar y reparar los permisos del usuario de la base de datos
A veces, el usuario de la base de datos ha perdido los privilegios necesarios. En Plesk puedes reasignarlos fácilmente.
- En el panel de Plesk, ve a Bases de datos dentro del dominio afectado.
- Haz clic en el nombre de la base de datos para abrir sus detalles.
- En la sección Usuarios, verás los usuarios asociados.
- Marca la casilla junto al usuario y haz clic en Editar.
- Asegúrate de que todos los privilegios (SELECT, INSERT, UPDATE, DELETE, etc.) estén marcados. Lo más seguro es seleccionar “Todos los privilegios”.
- Guarda los cambios.
[INFO] Si el problema persiste, puedes eliminar al usuario y volver a añadirlo con los mismos datos. Esto a menudo resetea los permisos correctamente.
Solución 4: Verificar el archivo de configuración de la base de datos en Plesk
A veces, el propio panel de Plesk tiene configuraciones incorrectas para el acceso a la base de datos. Esto es más raro, pero puede ocurrir tras una actualización.
- Ve a Herramientas y Ajustes > Ajustes del servidor (o Configuración del servidor).
- Busca la sección Base de datos.
- Verifica que el Host de la base de datos sea
localhost(a menos que uses un servidor externo). - Revisa que el Puerto sea el predeterminado (3306 para MySQL/MariaDB).
- Guarda los cambios y reinicia el servicio MySQL desde Administrador de servicios.
Solución 5: Forzar la reparación de la base de datos desde Plesk
Plesk incluye una herramienta para reparar bases de datos dañadas. Es muy útil cuando el error aparece de repente.
- En Plesk, ve a Bases de datos y selecciona la base de datos problemática.
- Haz clic en Reparar base de datos (puede estar en el menú de acciones o en los detalles de la base de datos).
- Espera a que el proceso termine. Plesk ejecutará comandos como
REPAIR TABLEyOPTIMIZE TABLE.
[WARNING] Si la base de datos está muy dañada, es posible que necesites restaurarla desde una copia de seguridad. Siempre ten un backup reciente.
Solución 6: Aumentar el límite de conexiones MySQL
Si tu sitio recibe mucho tráfico, es posible que el límite de conexiones simultáneas se haya alcanzado. Esto genera el error de conexión.
Desde la línea de comandos (SSH)
- Conéctate por SSH a tu servidor.
- Abre el archivo de configuración de MySQL:
nano /etc/my.cnf # o /etc/mysql/my.cnf - Busca la línea
max_connectionsy auméntala. Por ejemplo:
Si no existe, agrégala bajo la secciónmax_connections = 500[mysqld]. - Guarda el archivo y reinicia el servicio:
systemctl restart mariadb
[TIP] No subas este valor a más de 1000 a menos que tengas un servidor muy potente. Podría consumir toda la RAM.
Solución 7: Revisar los logs de MySQL para obtener pistas
Los logs de error de MySQL son tu mejor amigo para diagnósticos avanzados.
- Desde SSH, ejecuta:
Busca mensajes comotail -100 /var/log/mysql/error.logAccess denied for user,Can't connect to MySQL serveroToo many connections. - Si ves errores de “Access denied”, repite la Solución 2 y 3.
- Si ves “Can't connect”, verifica que el servicio esté corriendo (Solución 1).
Solución 8: Verificar la conectividad de red (si la base de datos es remota)
Si tu base de datos no está en localhost sino en un servidor externo (por ejemplo, un servicio como Amazon RDS o un servidor dedicado), el problema puede ser de red.
- Desde el servidor donde está tu sitio web, prueba la conexión con:
Si no responde, el firewall del servidor remoto puede estar bloqueando el puerto 3306.mysql -h [HOST_REMOTO] -u [USUARIO] -p -P 3306 - Asegúrate de que en el archivo de configuración de tu aplicación uses la IP o dominio correcto del servidor de bases de datos.
[INFO] Si usas un panel como Syspanel (antes HestiaCP) para gestionar bases de datos, recuerda que el acceso al panel es por el puerto 2106. La configuración de la base de datos en sí sigue usando el puerto 3306.
Solución 9: Restaurar desde una copia de seguridad
Si ninguna de las soluciones anteriores funciona y el error persiste, es posible que la base de datos esté corrupta de forma irreversible. En ese caso:
- Ve a Bases de datos en Plesk.
- Selecciona la base de datos y haz clic en Copias de seguridad.
- Elige una copia de seguridad anterior a la fecha en que comenzó el error.
- Restaura la base de datos.
[WARNING] Esta acción sobrescribirá los datos actuales. Asegúrate de que no perderás información crítica.
FAQ: Preguntas frecuentes sobre el error de conexión a la base de datos en Plesk
P: ¿El error puede deberse a un plugin o tema de WordPress?
R: Sí, especialmente si el plugin modifica la conexión a la base de datos. Desactiva todos los plugins temporalmente renombrando la carpeta wp-content/plugins desde el administrador de archivos de Plesk.
P: ¿Qué hago si veo el error “MySQL server has gone away”?
R: Esto suele indicar un timeout. Aumenta el valor de wait_timeout en el archivo my.cnf (por ejemplo, a 300 segundos) y reinicia MySQL.
P: ¿Plesk tiene alguna herramienta de diagnóstico integrada?
R: Sí, en Herramientas y Ajustes > Diagnóstico del servidor puedes ejecutar comprobaciones de servicios, incluyendo MySQL.
P: ¿El error puede aparecer si cambio la contraseña de la base de datos desde Plesk?
R: Sí, si no actualizas también la contraseña en el archivo de configuración de tu aplicación. Siempre que cambies credenciales, actualiza el wp-config.php o equivalente.
P: ¿Cómo sé si mi base de datos está en MySQL o MariaDB?
R: En Plesk, ve a Herramientas y Ajustes > Información del servidor. Allí verás la versión del motor de base de datos instalado.
Resumen final
El error de conexión a la base de datos en Plesk es frustrante pero casi siempre tiene solución. Recuerda el orden lógico:
- Verifica el servicio (que MySQL/MariaDB esté activo).
- Revisa credenciales en el archivo de configuración de tu sitio.
- Comprueba permisos del usuario de la base de datos.
- Usa la herramienta de reparación de Plesk.
- Aumenta límites si hay mucho tráfico.
- Consulta los logs para pistas concretas.
Si después de todo esto el error persiste, no dudes en contactar con tu proveedor de hosting, ya que podría tratarse de un problema a nivel de servidor que ellos deben resolver. ¡Buena suerte y espero que tu sitio web vuelva a funcionar en pocos minutos!
