在 my.ini 添加 skip-name-resolve 可禁用 DNS 解析、提升連線速度,但開啟後所有遠端授權必須使用 IP 地址,否則連線失敗。
mysql.user 表中是否存在主機名授權:
SELECT user, host FROM mysql.user WHERE host <> 'localhost';
% (任意主機) 授權記錄,此為 IP 通配符,不受影響。DB1、DB2) 授權,必須清理。UPDATE mysql.user SET host='127.0.0.1' WHERE host='localhost' AND user='root'; FLUSH PRIVILEGES;
DELETE FROM mysql.user WHERE host IN ('DB1', 'DB2', ...);
FLUSH PRIVILEGES;
修改完成後重啟 MySQL 服務,連線應恢復正常。
skip-name-resolve 前,先完整審查 mysql.user 表% 進行授權,避免主機名解析依賴