Host 'hostname' is blocked because of many connection errors

Host 'hostname' is blocked because of many connection errors

时间:2014-05-04 06:05:51      作者:beebol      标签:      分类: Mysql

同事请假,他负责的项目启程序时报了如下错误,第一次没有注意,以为是他忘记刷新host缓存了,直接按照后面的提示执行mysqladmin flush-h后就可以正常启了,也没有注意剪成的具体报错。

ErrorCode = 1129,ErrorMessage = [unixODBC][MySQL][ODBC 3.51 Driver]Host 'gs_103_224.90' is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts',ErrorSql

今天如常,我就看了下,应该不会没有刷新host的问题了吧!叫运维把报错信息一发,明白了。

问题在失败的连接请求数量超出了max_connect_errors中的值,导致报这个错误。mysql会将每个连接的信息都记录到缓存当中,一但超出设置的阈值就会报错。不过可以通过刷新缓存来解决问题。

果断查看变量信息:

[com@11103_101_219 ~]$ mysqladmin var |grep connect
| character_set_connection        | latin1                                 |
| collation_connection            | latin1_swedish_ci                      |
| connect_timeout                 | 10                                     |
| init_connect                    |                                        |
| max_connect_errors              | 1000                                   |
| max_connections                 | 60                                     || max_user_connections            | 0                                      |
| max_user_connections            | 0                                      |

max_connect_errors已经是1000了,应该算大了,主要原因是有一次网络故障导致了太多失败连接,后来把程序给停了,然后再启来时就报错了。

(root:${HOSTNAME}:Sun May  4 17:18:44 2014)[(none)]> set global max_connect_errors = 10000
    -> ;
Query OK, 0 rows affected (0.00 sec)

(root:${HOSTNAME}:Sun May  4 17:19:03 2014)[(none)]> exit
Bye
[com@11103_101_219 mysql]$ mysqladmin var | grep connect
| character_set_connection        | latin1                                 |
| collation_connection            | latin1_swedish_ci                      |
| connect_timeout                 | 10                                     |
| init_connect                    |                                        |
| max_connect_errors              | 10000                                  |
| max_connections                 | 60                                     || max_user_connections            | 0                                      |
| max_user_connections            | 0                                      |

了解原因之后,就增加了这个变量值,增大到了10000。

继续观察

时间:2014-05-04 06:05:51      作者:beebol      标签:      分类: Mysql
  • 分享到:
  • 微博
  • QQ空间
  • 腾讯微博
  • 微信

Copyright © 2015 Gitblog | Proudly powered by Gitblog.