MySql Host is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts' 解決方法

轉自 (http://www.cnblogs.com/susuyu/archive/2013/05/28/3104249.html)
[MySql Host is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts' 解決方法]
環境:linux,mysql5.5.21
錯誤:Host is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts'
原因:
  同一個ip在短時間內產生太多(超過mysql數據庫max_connection_errors的最大值)中斷的數據庫連接而導致的阻塞;
解決方法:
1、提高允許的max_connection_errors數量(治標不治本):
  ① 進入Mysql數據庫查看max_connection_errors: show variables like '%max_connection_errors%';
  ② 修改max_connection_errors的數量為1000: set global max_connect_errors = 1000;
  ③ 查看是否修改成功:
show variables like '%max_connection_errors%';

2、使用mysqladmin flush-hosts 命令清理一下hosts文件(不知道mysqladmin在哪個目錄下可以使用命令查找:whereis mysqladmin);
  ① 在查找到的目錄下使用命令修改:/usr/bin/mysqladmin flush-hosts -h192.168.1.1 -P3308 -uroot -prootpwd;
  備注:
    其中端口號,用戶名,密碼都可以根據需要來添加和修改;
    配置有master/slave主從數據庫的要把主庫和從庫都修改一遍的(我就吃了這個虧明明很容易的幾條命令結果折騰了大半天);
    第二步也可以在數據庫中進行,命令如下:flush hosts;

踩過的坑:

公司有臺機器ip出現過這種情況,根據上面設置了 還是不行,出事故的IP有兩個tomcat ,當時是一臺kill -9 , 數據庫執行flush hosts ,但是還是不行 ,原因是因為另外一臺可以還在處理鏈接狀態導致session沒有釋放。最終解決方案吧當前所有的tomcat 都停掉 在數據庫執行flush hosts 命令 重啟tomcat就可以了

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容