MySQL 5.5 遠程連線時出現 Can't get hostname for your address,原因是服務端嘗試對客戶端 IP 做 DNS 反向解析失敗或超時。在 [mysqld] 區段加入 skip-name-resolve 即可禁用解析、消除錯誤並加速連線建立。
# 1. 編輯配置文件
# Windows: my.ini
# Linux: my.cnf
[mysqld]
skip-name-resolve
# 2. 重啟服務
# Windows: net stop mysql && net start mysql
# Linux: service mysqld restart
GRANT ... TO 'user'@'hostname' 中的 hostname **不再生效**,只能用 IP、% 或 10.0.0.% 通配符。SHOW VARIABLES LIKE 'skip_name_resolve';
-- 應顯示 ON
# 遠程連線測試
mysql -h mysql_host -u user -p
# 不再出現 "Can't get hostname..."
一行配置,解決 DNS 反向解析導致的連線失敗與延遲。