mysql 加了 skip-name-resolve不能鏈接的問題,
要確認 MySql 是否采用過主機名的授權
在 MySql Server 的配置文件 My.ini 中,增加如下兩行:
[mysqld]
skip-name-resolve
它將禁止 MySql Server 對外部連接進行 DNS 解析,使用這一選項可以消除 MySql 進行 DNS 解析的時間。
但需要注意,如果開啟該選項,則所有遠程主機連接授權都要使用IP地址方式,否則MySQL將無法正常處理連接請求。
如果開啟 skip-name-resolve 選項,要確認 MySql 是否采用過主機名的授權,
在 mysql 中運行如下命令:
mysql> select user,host from mysql.user where host <> 'localhost' ;
一般會得到以“%”授權(也就是任何地址)的記錄:
沒有沒有記錄就說明不滿足條件,需要修改一下將localhost替換為127.0.0.1
mysql 加了 skip-name-resolve不能鏈接的問題,修改後重啟mysql就可以了
如果有host名是什麼“DB1”“DB2”的,那麼刪除授權表中有 hostanme 的記錄,然後重啟mysqld。