Aborted connection 854 to db: 'users' user: 'josh'
啟動參數 --log-warnings (5.7+) / --log-error-verbosity=2 (8.0+) 可記錄。
| 計數器 | 觸發條件 | 典型原因 |
|---|---|---|
| Aborted_clients | 連線建立後異常中斷 | 客戶端未呼叫 mysql_close()、閒置超時 (wait_timeout/interactive_timeout)、網路中斷、查詢執行中客戶端崩潰 |
| Aborted_connects | 連線建立階段失敗 | 權限不足、密碼錯誤、連線封包格式錯誤、connect_timeout 內未完成握手 |
| 參數 | 建議值 | 說明 |
|---|---|---|
| max_allowed_packet | 64M | 防止大查詢/大結果集中斷 |
| connect_timeout | 10 | 握手超時,防殭屍連線佔用槽位 |
| wait_timeout | 28800 (8h) | 非互動連線閒置回收 |
| interactive_timeout | 28800 | 互動式客戶端閒置回收 |
| net_read_timeout | 30 | 讀取封包超時 |
| net_write_timeout | 60 | 寫入封包超時 |
Aborted_connects + 同一 IP → 疑似密碼噴灌攻擊。fail2ban 封禁、max_connect_errors 觸發 FLUSH HOSTS、強制 TLS、禁用 root 遠端登入。Aborted_clients / Aborted_connects 速率(每分鐘)Threads_connected / Max_used_connectionsifconfig eth0 | grep errors、netstat -s | grep retransmit通訊錯誤 80% 源於網路層(雙工模式、TCP 參數、硬體),20% 為應用層(未正確關閉連線、超時設定不當)。建立分層監控體系(OS→Network→MySQL→Application),才能快速定位根因。