溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Linux下mysql實(shí)現(xiàn)遠(yuǎn)程連接

發(fā)布時(shí)間:2020-08-23 03:23:52 來(lái)源:網(wǎng)絡(luò) 閱讀:579 作者:huangjinjin520 欄目:MySQL數(shù)據(jù)庫(kù)

首先明白一點(diǎn)并不是mysql禁止遠(yuǎn)程連接,而是MYSQL的賬號(hào)禁止遠(yuǎn)程連接。可能覺(jué)得我有點(diǎn)咬文嚼字了,不過(guò)我感覺(jué)分清這點(diǎn)還是很重要的。默認(rèn)情況下,所有賬號(hào)都是禁止遠(yuǎn)程連接的。在安裝MYSQL的時(shí)候,在設(shè)置ROOT密碼那里有一個(gè)CHECKBOX,選中的話就開(kāi)啟了ROOT的遠(yuǎn)程登陸功能,默認(rèn)是沒(méi)被選中的。
利用:

         select * frommysql.user

查出所有的MYSQL用戶,可以發(fā)現(xiàn)默認(rèn)情況下,這些記錄的host字段的值全都是localhost,這個(gè)host字段就是表示哪些機(jī)器可以利用此賬號(hào)連接到本機(jī)的MYSQL。localhost當(dāng)然就代表本機(jī)了。所以默認(rèn)情況下別的機(jī)器無(wú)法連接。
所以要想開(kāi)啟一個(gè)賬號(hào)的遠(yuǎn)程連接,只要將這個(gè)賬號(hào)所對(duì)應(yīng)的host字段改成那個(gè)IP就行。
比如:

         update user set host = '192.168.230.2' whereuser='ninty';

執(zhí)行完此命令以后還要執(zhí)行:

        flush privileges;

來(lái)刷新所有數(shù)據(jù)庫(kù)用戶的權(quán)限配置信息讓設(shè)置及時(shí)生效?;蛘咧貑YSQL。
將ninty這個(gè)賬號(hào)的host改成192.168.230.2,這樣192.168.230.2這臺(tái)機(jī)器就允許通過(guò)ninty這個(gè)賬號(hào)來(lái)連接到本機(jī)的MYSQL;不過(guò)用別的賬號(hào)仍然是不行的。將ninty的host改成192.168.230.2,就只有192.168.230.2這臺(tái)機(jī)器可以通過(guò)ninty這個(gè)賬號(hào)來(lái)連接到本機(jī)的MYSQL,其它的機(jī)器(包括本機(jī))都無(wú)法進(jìn)行連接。
如果想將一個(gè)賬號(hào)設(shè)置成任何IP都可以登陸,將host改成 % 就行;如果只能192.168.230這個(gè)網(wǎng)段的IP可以登陸,那就將host改成:192.168.230.%
一些常見(jiàn)的錯(cuò)誤信息:
ERROR 1130 (00000):Host 'AAAAA-8HK8AISO' is not allowed to connect to this MySQL server
AAAAA-8HK8AISO應(yīng)該是本機(jī)的機(jī)器名,當(dāng)MYSQL服務(wù)器禁止本機(jī)使用相應(yīng)的賬號(hào)連接的時(shí)候,就會(huì)暴這個(gè)錯(cuò)誤。這時(shí)換一個(gè)允許本機(jī)去連的賬號(hào)就可以啦。

ERROR 1045(28000): Access denied for user 'joejoe1991'@'TQSOFT-8HK8AISO' (using password:YES)
這個(gè)錯(cuò)誤一般就是用戶名或者密碼錯(cuò)誤,這時(shí)應(yīng)該是允許本機(jī)連接的, 否則報(bào)的應(yīng)該是上面那個(gè)錯(cuò)。

ERROR 2003 (HY000): Can't connect to MySQL server on'192.168.230.2' (10061)
這個(gè)應(yīng)該是網(wǎng)絡(luò)方面的原因連不到MYSQL,可能是IP或者端口不對(duì),或者服務(wù)器沒(méi)有開(kāi)啟MYSQL或者防火墻擋住了連接 。

PS:Linux下安裝完MySQL默認(rèn)用戶是沒(méi)有密碼的,開(kāi)啟遠(yuǎn)程連接之前最好將用戶設(shè)上密碼。

一個(gè)簡(jiǎn)單的方法是:
shell命令下執(zhí)行mysqladmin -u root password "密碼",可以通過(guò)訪問(wèn)mysql數(shù)據(jù)庫(kù)命令:

    [root@gaoke~]#mysql -uroot -p → 敲回車 輸入密碼進(jìn)行驗(yàn)證。

Linux下mysql實(shí)現(xiàn)遠(yuǎn)程連接

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI