| 錯誤碼 | 訊息 | 含義 |
| 2002 | Can't connect to local MySQL server through socket | 服務未啟動、socket 路徑錯誤、權限不足 |
| 2003 | Can't connect to MySQL server on 'host' (10061) | 網路不通、防火牆阻擋、bind-address 錯誤、埠未監聽 |
系統級排查步驟
- 確認服務狀態:
- Windows:服務管理器 → MySQL → 「已啟動」。
- Linux:
systemctl status mysqld / service mysql status。
- 檢查監聽埠:
netstat -an | grep 3306
ss -lntp | grep 3306
應顯示 LISTEN 狀態。
- 驗證配置檔:
bind-address = 0.0.0.0(允許遠程)或具體 IP。
skip-networking 未開啟。
datadir、basedir 路徑正確。
- 磁碟空間:
df -h 確保資料目錄分區有剩餘空間。
- 防火牆/安全組:放行 3306 埠(雲主機需檢查安全組規則)。
- Windows TCP 等待優化(高併發連線失敗):
注冊表:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
新增 DWORD:TcpTimedWaitDelay = 30~60 (預設 240)
重啟生效
客戶端診斷指令
mysqladmin -h host_ip version
mysqladmin -h host_ip --port=3306 variables
mysqladmin --protocol=socket --socket=/tmp/mysql.sock version
虛擬主機用戶
無服務器管理權限,請直接聯繫空間商確認:MySQL 服務狀態、連線地址(非 localhost 可能)、防火牆白名單。
copyright ©
萬盛學電腦網 all rights reserved