MySQL數(shù)據(jù)庫(kù)怎么處理無(wú)法被其他ip訪問(wèn)的方法
發(fā)表時(shí)間:2023-07-21 來(lái)源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]這篇文章主要給大家介紹了關(guān)于mysql數(shù)據(jù)庫(kù)無(wú)法被其他ip訪問(wèn)的解決方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。前言還...
這篇文章主要給大家介紹了關(guān)于mysql數(shù)據(jù)庫(kù)無(wú)法被其他ip訪問(wèn)的解決方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。
前言
還是之前說(shuō)的項(xiàng)目,環(huán)境目前已經(jīng)準(zhǔn)備好了,項(xiàng)目準(zhǔn)備驗(yàn)證階段發(fā)現(xiàn)了一個(gè)問(wèn)題,從上層應(yīng)用輸入鑒權(quán)訪問(wèn)應(yīng)用,一直在等待狀態(tài),輸入了正確的用戶名及密碼,卻無(wú)法訪問(wèn)。看起來(lái)像是沒(méi)辦法訪問(wèn)到數(shù)據(jù)庫(kù)連接的意思。
mysql部署后的端口一般都是3306,嘗試去ping和telnet 3306端口,發(fā)現(xiàn)ip可以ping通,但是3306端口無(wú)法被telnet,并且給出了一個(gè)這樣的報(bào)錯(cuò):
ERROR 1130: Host *.*.*.* is not allowed to connect to MySQL
看到這個(gè)錯(cuò)誤后,上網(wǎng)一查,基本上有挺多解決方案,但是為什么還要專門寫一下呢?
答案是:網(wǎng)上很多都是mysql 5.6的解決方法,在5.7里,這個(gè)錯(cuò)誤解決方法如下:
1.在第一次登陸mysql后,需要及時(shí)修改root的密碼,這里5.6和5.7有一個(gè)差異,那就是5.6的密碼字段為:password,但是在5.7版本里,這個(gè)字段被取消了,取而代之的是:authentication_string字段。
正確的修改方法為:
update user set authentication_string=password("xxxx") where user = "root";
flush privileges;
2.修改好了之后,我們用use mysql命令切換到mysql庫(kù)里,注意,這個(gè)mysql庫(kù)在mysql里是真是存在的,存放一些db相關(guān)信息的庫(kù)。
命令:use mysql;
3.找到users表,執(zhí)行如下命令:
grant all privileges on *.* to 'root'@'%' identified by 'JLwg!2017' with grant option;
網(wǎng)上關(guān)于這塊的修改方法很多,應(yīng)該一共有4種,我用的是其中一種。
這個(gè)命令的意思是,修改root用戶的訪問(wèn)權(quán)限,讓所有ip都可以訪問(wèn)這個(gè)用戶,這樣一來(lái)的話,我們的應(yīng)用就可以從外部ip訪問(wèn)這個(gè)mysql了,不然只有l(wèi)ocalhost可以訪問(wèn),很不方便。
4.最后執(zhí)行flush privileges;
命令,重啟Mysql服務(wù),應(yīng)用順利登陸成功。
總結(jié)
以上就是MySQL數(shù)據(jù)庫(kù)如何解決無(wú)法被其他ip訪問(wèn)的方法的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注php中文網(wǎng)其它相關(guān)文章!
學(xué)習(xí)教程快速掌握從入門到精通的SQL知識(shí)。