新聞中心
這篇文章主要介紹解決MySQL全局權(quán)限賬戶%無法登錄的方法,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
目前成都創(chuàng)新互聯(lián)公司已為近1000家的企業(yè)提供了網(wǎng)站建設(shè)、域名、雅安服務(wù)器托管、成都網(wǎng)站托管、企業(yè)網(wǎng)站設(shè)計(jì)、樂東黎族網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長(zhǎng),共同發(fā)展。
mysql中有新建了一個(gè)%(允許所有主機(jī)連接)和ALL權(quán)限的賬戶。但是竟然連不上。用root或者其他localhost的用戶卻可以登錄。首先檢查下防火墻打開了沒,可以用service iptables stop打開防火墻。如果仍然報(bào)錯(cuò):
報(bào)錯(cuò):ERROR 1045 (28000): Access denied for user 'zzq'@'localhost' (using password: YES)
帳號(hào)密碼都對(duì)了 就是連不上。細(xì)心的話我們會(huì)發(fā)現(xiàn) 帳號(hào)權(quán)限是%,而這里提示的是localhost。
錯(cuò)誤原因如下:
mysql> GRANT ALL PRIVILEGES ON *.* TO 'monty'@'localhost' IDENTIFIED BY 'some_pass' WITH GRANT OPTION;
mysql> GRANT ALL PRIVILEGES ON *.* TO 'monty'@'%' IDENTIFIED BY 'some_pass' WITH GRANT OPTION;
?6?1 前兩個(gè)帳戶名稱都是monty,而且都是擁有所有權(quán)限和密碼。但是兩者的區(qū)別在于,第一個(gè)帳戶(monty@localhost)只能通過本地登錄,而第二個(gè)賬戶(monty@%)可以通過任意主機(jī)登錄。值得注意的是,為了能夠使用monty帳戶在任何地方進(jìn)行登錄,這兩個(gè)賬戶同時(shí)存在則是必要的。因?yàn)椋绻麤]有本地帳戶(monty@localhost),使用monty帳戶登錄時(shí),mysql_install_db將優(yōu)先考慮創(chuàng)建一個(gè)本地的匿名帳戶。那么結(jié)果將是monty賬戶會(huì)被當(dāng)作一個(gè)匿名帳戶來處理。原因則在于,匿名帳戶擁有一個(gè)比nonty@%賬戶更加具體的host字段值,從而在user表排序的時(shí)候會(huì)相對(duì)出現(xiàn)的更早。
也就是說 同一個(gè)賬戶 要同時(shí)存在%帳號(hào)或者localhost帳號(hào)時(shí), %帳號(hào)才起作用。
我們給 zzq帳號(hào)添加一個(gè)localhost帳號(hào)。
GRANT ALL PRIVILEGES ON *.* TO 'zzq'@'localhost' IDENTIFIED BY '123456' WITH GRANT OPTION;
flush privileges;
然后再登錄 發(fā)現(xiàn)可以登錄了。
以上是解決mysql全局權(quán)限賬戶%無法登錄的方法的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!
當(dāng)前題目:解決mysql全局權(quán)限賬戶%無法登錄的方法
本文URL:http://www.ef60e0e.cn/article/gpcpii.html