Host is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts'


提高允許的max_connection_errors數量,首先查看該屬性設置為多大

命令:show global variables like '%max_connect_errors%';

 

當客戶端連接服務端超時(超過connect_timeout), 服務端就會給這個客戶端記錄一次error,當出錯的次數達到max_connect_errors的時候,這個客戶端就會被鎖定。所以根據業務來盡量把這個值設置大一點,mysql默認值為10,我們可以根據具體需要設置大一點,這里設置為1000.(並非越大越好,越大被攻擊時安全性越低)。使用命令:set global max_connect_errors=1000;

 

設置后立馬生效。這里我們可以查看一下,是否修改成功,使用命令:show global variables like '%max_connect_errors%';

到這一步,就解決了問題了。如果需要永久生效,得去修改mysql配置文件里相應屬性。可能配置文件里沒有這個屬性,需要自己手動添加

 

也可以使用清楚緩存的方法。這樣就會把計數清理掉。

命里一,到安裝bin目錄下,使用mysqladmin  -u  root  -p  flush-hosts命里

輸入密碼后,即完成清楚緩存。

也可以進入mysql控制台,執行:flush hosts;



 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM