mysql連接flush-hosts問題處理

mysql連接flush-hosts問題處理

上網查到解決方案

【錯誤】

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

【原因】

同一個ip在短時間內產生太多(超過mysql數據庫max_connection_errors的最大值)中斷的數據庫連接而導致的阻塞;

【解決方法】

  • 1.首先使用 root 登錄 mysql -u root -p

  • 2.提高允許的max_connection_errors數量(治標不治本):

    • ① 進入Mysql數據庫查看max_connection_errors: show variables like "max_connection_errors";

    • ② 修改max_connection_errors的數量爲1000: set global max_connect_errors = 1000;

    • ③ 修改 max_connections 的數量爲1000 :set global max_connections = 1000;

  • 3.使用 mysql> flush-hosts; 命令清理一下hosts文件;

    • ① 最簡單的方法是root登錄後,直接使用 mysql> flush hosts; 命令;

備註:其中端口號,用戶名,密碼都可以根據需要來添加和修改。

不過這些方法都是治標不治本的,本質原因是由於程序中創建了過多的mysql連接,通常情況下,程序開始的運行的時候建立與數據庫的連接,運行期間進行數據庫的一些增刪改查操作,程序關閉的時候,斷開與數據庫的連接。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章