mysqladmin version
# 若回應正常,顯示 Uptime → Server 活著,問題在 Client/網路
# 若無回應或 timeout → 檢查 mysqld 進程
ps aux | grep mysqld
# 查錯誤日誌:/var/lib/mysql/hostname.err
wait_timeout)無活動自動斷線。wait_timeout 或應用端實作重連機制。max_allowed_packet。逐步排查:
mysqld 進程存在。mysqladmin version
mysqladmin variables
mysqladmin -h `hostname` version
mysqladmin -h `hostname` --port=3306 version
mysqladmin -h 'server_ip' version
mysqladmin --socket=/tmp/mysql.sock version
Host 'hostname' is blocked because of many connection errors.
Unblock with 'mysqladmin flush-hosts'
max_connect_errors(預設 10)次,Server 判定為攻擊而封鎖。mysqladmin flush-hosts。max_connect_errors(如 10000),並檢查應用連線邏輯(重試風暴、密碼錯誤等)。skip-grant-tables 模式下未執行 FLUSH PRIVILEGES。mysqldump 缺少 --single-transaction 導致鎖表影響線上服務。max_allowed_packet 過小導致大 INSERT 失敗。innodb_lock_wait_timeout(預設 50s)。檢查長交易、缺少索引、死鎖。myisam_max_sort_file_size 限制。SHOW PROCESSLIST 看是否有大量 Sleep/Locked 連線。SHOW ENGINE INNODB STATUS 分析死鎖、鎖等待、Buffer Pool 狀態。EXPLAIN SELECT ... 確認執行計畫是否用到索引。SHOW GLOBAL STATUS LIKE 'Threads_%' 監控連線數趨勢。