早上9点上班,依然8点55分到达工位。照常打开笔记本电脑,登录钉钉、微信,打开mysql连接客户端。程序员的生活总是会有小插曲:开发环境mysql数据库连不上了,报错如下:
"Host 'xxx.xxx.xxx.xx' is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts'"
我一瞅,错误连接次数过多?什么鬼?但是镇定一想,台式机的几个本地服务一直开着,说不定他们引起的,打开台式机屏幕一看,果不其然,控制台大量连接mysql的报错,通过搜索得知原因:
同一个ip在短时间内产生太多(超过mysql数据库max_connection_errors的最大值)中断的数据库连接而导致的阻塞。
解决方法如下:
- 先将本地服务关掉
- 找到开发环境mysql所在服务器
- 使用mysqladmin flush-hosts命令清理一下hosts文件(可使用命令查找:whereis mysqladmin)
(其中端口号,用户名,密码都根据实际修改)/usr/local/mysql/bin/mysqladmin flush-hosts -h127.0.0.1 -P3306 -uroot -p123
然后连接mysql成功
【顺道一提,还有一种治标不治本的方法,就是修改max_connection_errors的值,不过,这只是在能登录mysql的时候才能修改,不然都连不上mysql了还修改个鬼哦】
网友评论