安裝的mysql 5.5,發(fā)現(xiàn)用mysql客戶端遠(yuǎn)程連接的時候,報1042-Can’t get hostname for your address錯誤,而連接用戶已授權(quán),這個報錯的意思是“您的地址無法獲得主機(jī)名”,我就想到了skip-name-resolve參數(shù).
解決方法,代碼如下:
vim /etc/my.cnf
在[mysqld]節(jié)點下新增或修改如下兩行:
skip-name-resolve
#忽略主機(jī)名的方式訪問,代碼如下:
lower_case_table_names=1
#忽略數(shù)據(jù)庫表名大小寫,重啟MySQL服務(wù)就OK.
注意:連接被拒絕,說明你密碼錯誤,你在 服務(wù)器上用mysql client 登錄試試看,然后看看 root這個用戶是否允許遠(yuǎn)程登錄.
我想跟你說的是,linux 密碼正確并不代表 mysql 密碼也正確,雖然都同為root,但是,兩個root 是不一樣的,一個是操作系統(tǒng)的root 一個是mysql的root.
不要以為你的mysql安裝的時候建立了一個mysql賬號,就以為他用的是系統(tǒng)認(rèn)證,那是很傻的.第一個問題,回答完.
linux 沒裝防火墻,從你給除的錯誤提示,已經(jīng)很明確的說明了這一點,您的軟件已經(jīng)連接到了mysql 只是連接以后,發(fā)現(xiàn)密碼錯誤了,所以,提示您給的錯誤,第二個問題,完.
我感覺,自動設(shè)置和手動設(shè)置沒有什么實質(zhì)的關(guān)系,只要ip在同一網(wǎng)段,相互能訪問.
新聞熱點
疑難解答
圖片精選