jun 2, 2009
Host ‘host_name’ is blocked because of many connection errors. Unblock with ‘mysqladmin flush-hosts
No hay duda que si todos los errores en el mundo de los sistemas fueran tan sumamente descriptivos como este a muchos se nos terminaría rápido el trabajo. Bromas aparte, si os encontráis con un error como el siguiente a la hora de conectar a un servidor MySQL:
Host ‘host_name’ is blocked because of many connection errors.
Unblock with ‘mysqladmin flush-hosts’
La solución está clara, acceder al servidor MySQL y ejecutar el comando siguiente como root:
mysqladmin flush-hosts
El origen del problema es que el servidor MySQL ha recibido demasiados intentos de conexión desde la máquina indicada que han sido interrumpidos. Este tipo de conexiones fallidas provocan que el servidor MySQL detecte indicios de actividad sospechosa desde el host que está generando los errores, y por seguridad decide bloquearle el acceso.
Por defecto, Mysql está configurado para permitir 10 conexiones incorrectas antes de bloquearlo, si queremos ampliar este número deberemos reconfigurar la siguiente variables en nuestro fichero de configuración (my.cnf):
max_connect_errors= xxxx
Lo recomendable de todas formas es detectar el origen del problema para evitar tener que modificar un parámetro como este que puede afectar a la seguridad de nuestro sistema, analizar el origen de estas conexiones, el porqué de los fallos, etc.

alguien me puede decir como se arregla esto?
El propio artículo lo dice…
mysqladmin flush-hosts
Muchas gracias por la respuesta, pero dispulpa mi ignorancia en donde se ejecuta dicho comando. Cuando abro el MyPhPAdmin no veo la opción de ejecutar el comando indicado como root. Es posible que este problema se deba a un posible ataque de un hacker?
Hola Gabriel,
Lo tienes que hacer desde la línea de comandos:
mysqladmin flush-hosts
Para revisar si es un posible ataque habría que revisar los logs, programación, etc.
Saludos
Este error puede ser causado por que puedes estar tratando de conectar tu base de datos como si estuviese de forma externa cuando esta almacenada en el servidor donde esta alojada la base de datos ejemplo:
$dbconecta=mysql_connect(“nombrepagina.com”,”usuario”,”password”);—-> Error!
$dbconecta=mysql_connect(“localhost”,”usuario”,”password”);———–> Bien!
Cambiandole este parametro no es necesario ejecutar el comando flush ya que muchos servidores bloquean estas funciones de usuario root…
sos un genio
Y si el comando no funciona????. Lo que está haciendo el comando hasta ahora es cambiarme la clave del usuario root con ingreso desde localhost. A alguien le paso???.
Este error puede ser causado por que puedes estar tratando de conectar tu base de datos como si estuviese de forma externa cuando esta almacenada en el servidor donde esta alojada la base de datos ejemplo:
$dbconecta=mysql_connect(“nombrepagina.com”,”usuario”,”password”);—-> Error!
$dbconecta=mysql_connect(“localhost”,”usuario”,”password”);———–> Bien!
Cambiandole este parametro no es necesario ejecutar el comando flush ya que muchos servidores bloquean estas funciones de usuario root…
Desde SSH, ingresar con el usuario root y ejecutar mysqladmin flush-hosts
y listo!!!
Hola que tal, tengo el mismo problema. Y aun sigo sin entender donde se pone ese comando. Se ingresa desde el phpmyadmin?? Lo que sucede tengo un hosting contratado y eh entrado al panel de control, y posteriormente al apartado de mysql de phpmyadmin pero no veo donde poner ese comando. Agradeceria su ayuda.
Igual intente hacer lo que propuso “Alejandro” lo de verificar $dbconecta=mysql_connect(“nombrepagina.com”,”usuario”,”password”);—-> Error! $dbconecta=mysql_connect(“localhost”,”usuario”,”password”);———–> Bien!
Y efectivamente mi configuracion esta bien.
De antemano gracias.
Este problema me sucede cuando quiero acceder a una página (host) desde el chrome.
Yo no instalé mysql, ¿cómo accedo a el que entiendo que utiliza el chrome para desbloquear el host?