MySQL異常:未驗證的用戶嘗試登錄
MySQL數(shù)據(jù)庫在操作中有時會出現(xiàn)一些異常,就不如下文中將為大家介紹的未驗證的用戶嘗試登錄,就是MySQL數(shù)據(jù)庫操作過程中可能會出現(xiàn)的問題,下文中將為大家作出詳細(xì)的講解。
今天公司數(shù)據(jù)庫出現(xiàn)了停頓和阻塞的問題,檢查數(shù)據(jù)庫的時候發(fā)現(xiàn),show processlist;可以看到大量:
....
: 3436942 : unauthenticated user : 192.168.0.4:49607 : : Connect : : login :
: 3436943 : unauthenticated user : 192.168.0.4:49608 : : Connect : : login :
.....
不斷有未驗證的用戶嘗試登錄卻沒有通過,有同學(xué)Google出來,發(fā)現(xiàn)是和域名解析有關(guān)系:
不管什么客戶端連接上來,服務(wù)器端都會對客戶端進(jìn)行DNS反查,來獲得客戶端的域名或主機(jī)名。
很有可能是因為DNS服務(wù)器出了問題,才導(dǎo)致無法解析——雖然解析出來的結(jié)果應(yīng)該是沒有
同學(xué)通過在my.cnf中加入skip-name-resolve
來禁止反向域名解析(或者在啟動命令行中添加參數(shù)--skip-name-resolve。
這種方式也是推薦的MySQL優(yōu)化方式之一。
但這種方式的缺點是,權(quán)限中的host不能再使用主機(jī)名,而要使用IP地址,所幸我們配置的是“%”,因此我比較傾向于使用另一種方式,就是在/etc/hosts文件中添加對應(yīng)的host記錄。
相信大家通過上文的學(xué)習(xí),在以后的工作中遇到類似的問題就能夠輕松解決,希望大家都能夠從上文涉及到的內(nèi)容中有所收獲。