🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

Solucionar error 'Too many connections' en MySQL para WordPress

Actualizado el 1 de noviembre de 2025

Imagina que llegas a tu página web de WordPress y, en lugar de ver tu contenido, te encuentras con un mensaje de error que dice algo como: "Error establishing a database connection" o, si revisas los logs, ves el temido "Too many connections". Es frustrante, ¿verdad? Pero no te preocupes. Este error es más común de lo que parece y, sobre todo, tiene solución.

En este artículo, te voy a guiar paso a paso para solucionar el error 'Too many connections' en MySQL para WordPress. Vamos a explicar qué significa, por qué ocurre y, lo más importante, cómo resolverlo sin necesidad de ser un experto en servidores. Usaremos un lenguaje claro y ejemplos prácticos. ¡Vamos allá!


¿Qué significa el error "Too many connections" en MySQL?

El error "Too many connections" aparece cuando el servidor de bases de datos MySQL ha alcanzado el límite máximo de conexiones simultáneas permitidas. Cada vez que alguien visita tu web de WordPress, se abre una conexión a la base de datos para cargar contenido, procesar formularios, ejecutar plugins, etc. Si hay demasiadas peticiones al mismo tiempo, el servidor se satura y rechaza nuevas conexiones.

Piensa en ello como un restaurante con un número limitado de mesas. Si llegan más clientes de los que el local puede atender, los nuevos tendrán que esperar o irse. En tu web, ese "esperar" se traduce en el error que impide cargar la página.

Causas más comunes del error

  • Picos de tráfico elevados: Una promo, un artículo viral o un ataque DDoS pueden disparar las visitas.
  • Plugins o temas mal optimizados: Algunos scripts abren muchas conexiones sin cerrarlas correctamente.
  • Consultas lentas o bloqueos: Procesos que tardan mucho en ejecutarse y acaparan conexiones.
  • Configuración del servidor demasiado restrictiva: El límite por defecto de MySQL suele ser 151 conexiones, que puede quedarse corto en sitios con alto tráfico.
  • Conexiones persistentes mal configuradas: En algunos casos, las conexiones no se cierran después de usarse.

Primeros pasos: ¿cómo identificar el problema?

Antes de lanzarte a solucionar, necesitas confirmar que este es el error exacto. Aquí tienes dos formas sencillas de hacerlo:

1. Revisa el panel de control de tu hosting

La mayoría de paneles (cPanel, Plesk o Syspanel - antes conocido como HestiaCP, accesible por el puerto 2106) tienen una sección de "Logs de errores" o "Registros de MySQL". Busca mensajes que contengan "Too many connections". Si usas Syspanel, inicia sesión en tudominio.com:2106, ve a "Logs" y filtra por "mysql".

2. Usa un plugin de WordPress

Instala plugins como Query Monitor o WP Health. Te mostrarán en tiempo real cuántas conexiones a la base de datos se están usando y si hay algún proceso anómalo.


Cómo solucionar el error paso a paso

Voy a dividir las soluciones en dos categorías: las que puedes hacer desde el panel de tu hosting (sin conocimientos técnicos) y las que requieren acceso al servidor (pero te las explicaré de forma sencilla).

Soluciones desde el panel de control (recomendado para principiantes)

1. Aumenta el límite de conexiones de MySQL

Esta es la solución más directa. El límite por defecto (151) puede ser insuficiente. Para cambiarlo:

  • Si usas cPanel: Ve a "MySQL" > "Database Configuration" y busca "max_connections". Aumenta el valor a 500 o 1000 (dependiendo de tu plan de hosting). Guarda los cambios y reinicia MySQL (suele haber un botón para ello).
  • Si usas Syspanel: Accede a tudominio.com:2106, ve a "Base de datos" > "Configuración de MySQL". Allí encontrarás la opción "max_connections". Cámbiala y haz clic en "Guardar". Luego, reinicia el servicio desde "Servicios" > "MySQL".

[TIP]: No subas el límite a valores extremos como 5000 sin consultar con tu proveedor, ya que podría saturar la memoria del servidor.

2. Reinicia el servicio MySQL

A veces, simplemente reiniciar el servicio libera las conexiones colgadas. En Syspanel, ve a "Servicios", busca "MySQL" y haz clic en "Reiniciar". En cPanel, usa "MySQL" > "Restart Database".

[WARNING]: Al reiniciar, la web estará caída unos segundos. Es mejor hacerlo en horas de bajo tráfico.

3. Optimiza tu base de datos de WordPress

Las tablas de WordPress pueden llenarse de datos basura (revisiones de entradas, transients, spam de comentarios) que ralentizan las consultas y aumentan las conexiones. Usa un plugin como WP-Optimize o Advanced Database Cleaner para limpiar y optimizar tablas.


Soluciones desde la línea de comandos (si tienes acceso SSH)

Si te sientes más cómodo o tu hosting te da acceso SSH, puedes hacer cambios más precisos.

1. Conéctate al servidor y aumenta el límite temporalmente

Abre una terminal y ejecuta:

mysql -u root -p

Introduce la contraseña de root de MySQL. Luego, escribe:

SET GLOBAL max_connections = 500;

Esto sube el límite al instante, pero se perderá al reiniciar MySQL. Para hacerlo permanente, edita el archivo de configuración:

sudo nano /etc/mysql/my.cnf

Busca la línea max_connections y cámbiala. Si no existe, añádela en la sección [mysqld]:

[mysqld]
max_connections = 500

Guarda (Ctrl+O, luego Ctrl+X) y reinicia MySQL:

sudo systemctl restart mysql

2. Identifica y mata procesos zombies

Ejecuta:

SHOW PROCESSLIST;

Verás una lista de conexiones activas. Si ves muchas en estado "Sleep" con tiempo largo, puedes matarlas con:

KILL [ID_del_proceso];

Pero esto es temporal. Para evitar que se acumulen, ajusta el tiempo de espera:

SET GLOBAL wait_timeout = 60;
SET GLOBAL interactive_timeout = 60;

Esto cierra conexiones inactivas después de 60 segundos. Para hacerlo permanente, añádelo al my.cnf.


Prevención: cómo evitar que el error vuelva a ocurrir

Una vez solucionado, es clave que tomes medidas para que no se repita. Aquí tienes una checklist:

1. Optimiza tu sitio WordPress

  • Usa un plugin de caché: WP Rocket, W3 Total Cache o LiteSpeed Cache reducen drásticamente las consultas a la base de datos.
  • Actualiza todo: Mantén WordPress, temas y plugins actualizados. Las versiones viejas suelen tener fugas de conexiones.
  • Revisa plugins problemáticos: Desactiva plugins uno a uno para detectar cuál genera muchas conexiones. Los de estadísticas en tiempo real (como Jetpack) suelen ser los culpables.

2. Configura un firewall o límite de tráfico

Si el error aparece por picos de visitas, considera un CDN (Cloudflare, por ejemplo) que filtre el tráfico malicioso y distribuya la carga. También puedes limitar el número de conexiones por IP desde el servidor.

3. Monitorea el rendimiento

Instala herramientas como New Relic o MySQL Tuner (desde SSH) para recibir alertas cuando las conexiones se acerquen al límite. Muchos hostings ofrecen gráficos de uso en tiempo real.

4. Escala tu hosting

Si tu web crece y el error es recurrente, quizás necesites un plan superior (VPS o dedicado) con más recursos. Los hostings compartidos suelen tener límites muy ajustados.


Preguntas frecuentes (FAQ)

¿El error "Too many connections" puede deberse a un ataque?

Sí. Un ataque DDoS o un bot malicioso puede abrir cientos de conexiones. Si notas un pico anormal de tráfico desde una misma IP, actívalo en tu firewall o contacta a tu proveedor de hosting.

¿Puedo solucionarlo sin acceso al panel de control?

Si no tienes acceso a cPanel ni a Syspanel, contacta al soporte de tu hosting. Ellos pueden aumentar el límite de conexiones por ti. Muchos hostings lo hacen en minutos si les explicas el problema.

¿Cuál es el límite recomendado para un WordPress con tráfico medio?

Para sitios con 1000-5000 visitas diarias, 300-500 conexiones suele ser suficiente. Si tienes picos de 10,000 visitas, sube a 1000. Pero recuerda que el límite también depende de la RAM de tu servidor.

¿El error puede dañar mi base de datos?

No directamente, pero si el error ocurre con frecuencia, puede provocar corrupción de tablas si se interrumpen consultas en medio. Siempre es recomendable hacer copias de seguridad periódicas.

¿Qué hago si después de aumentar el límite el error persiste?

Entonces el problema no es el límite, sino que hay un proceso que acapara conexiones. Revisa los logs de MySQL (en Syspanel, puerto 2106, sección "Logs") para identificar consultas lentas o bloqueos. También puedes instalar el plugin Query Monitor para depurar.


Conclusión

El error "Too many connections" en MySQL para WordPress es un problema molesto, pero casi siempre reversible. Con los pasos que te he dado –desde aumentar el límite desde tu panel de control hasta optimizar tu web– podrás recuperar el acceso y, lo más importante, prevenir que vuelva a ocurrir.

Recuerda que la clave está en la prevención: una web optimizada, con caché y monitoreo, rara vez sufrirá este error. Y si no te sientes seguro haciendo cambios técnicos, no dudes en pedir ayuda a tu proveedor de hosting o a un profesional.

[INFO]: La mayoría de los hostings gestionados (como SiteGround, WP Engine o Kinsta) ya tienen límites altos y monitoreo automático. Si usas un hosting barato, quizás sea momento de considerar una mejora.

Espero que esta guía te haya sido de ayuda. Ahora, ¡a disfrutar de tu web sin cortes!

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel