首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> MySQL 資料庫 >> MySQL 綜合教學

MySQL 5.5 遠程連線報錯「Can't get hostname for your address」:skip-name-resolve 禁用 DNS 反向解析即時生效

     編輯:MySQL 綜合教學

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.% 通配符。
  • 現有帳號若使用主機名,需遷移為 IP 格式。
  • 內網環境強烈建議開啟,公網環境配合防火牆/安全組使用。

驗證

SHOW VARIABLES LIKE 'skip_name_resolve';
-- 應顯示 ON

# 遠程連線測試
mysql -h mysql_host -u user -p
# 不再出現 "Can't get hostname..."

一行配置,解決 DNS 反向解析導致的連線失敗與延遲。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved