問題
先看報錯:
2003 - Can’t connect to MySQL server on ‘X.X.X’ (10060 “Unknown error”)。
意思是服務(wù)器遠(yuǎn)程連接出錯:未知錯誤。
解決方案:
遇到這個問題,首先想到的是權(quán)限不夠。那咱就給它賦權(quán)。
首先登錄MySQL數(shù)據(jù)庫:mysql -u用戶名 -p密碼;
然后:use mysql;
進(jìn)入數(shù)據(jù)庫后我們先看看mysql user初始的權(quán)限表長啥樣,輸入sql語句:
select Host,User from user;
有結(jié)果:
+-----------------------+------+
| Host | User |
+-----------------------+------+
| 127.0.0.1 | root |
| ::1 | root |
| localhost | |
| localhost | root |
| localhost.localdomain | |
| localhost.localdomain | root |
+-----------------------+------+
6 rows in set (0.00 sec)
看到這里就比較明了了,由于我們是遠(yuǎn)程連接訪問mysql,需要開放主機(jī)權(quán)限。這里我們將127.0.0.1改為%(%表示允許任意的host訪問)。輸入mysql語句:
UPDATE user SET Host = '%' WHERE Host = '127.0.0.1' AND User = 'root';
flush privileges;
回頭看看有沒有改成功:
+-----------------------+------+
| Host | User |
+-----------------------+------+
| % | root |
| ::1 | root |
| localhost | |
| localhost | root |
| localhost.localdomain | |
| localhost.localdomain | root |
+-----------------------+------+
6 rows in set (0.00 sec)
好了,權(quán)限修改成功了。我們就可以嘗試連接數(shù)據(jù)庫了。
是的,你沒看錯,它還是不成功,問題出在哪呢。想了好久,突然就在一念之間:會不會是防火墻的問題?
于是我嘗試關(guān)閉防火墻,然后連接,來不及反應(yīng),很快呀,直接連接成功。
[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來直接上傳
現(xiàn)在是連接成功了,但是我關(guān)閉防火墻之后又連不了了,咱也并不能永久關(guān)閉防火墻吧。
于是我查了查,應(yīng)該是端口沒有開放,導(dǎo)致的連接失敗。輸入命令:
systemctl start firewalld.service
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload
后面就可以正常連接了。文章來源:http://www.zghlxwxcb.cn/news/detail-469658.html
總結(jié)
連接失敗是所用主機(jī)沒有訪問遠(yuǎn)程服務(wù)器的權(quán)限,這里可以通過修改權(quán)限解決。但是在使用MySQL服務(wù)前需要開放端口號3306,或者直接關(guān)閉防火墻。文章來源地址http://www.zghlxwxcb.cn/news/detail-469658.html
到了這里,關(guān)于解決遠(yuǎn)程連接MySQL報錯:2003 - Can‘t connect to MySQL server on ‘X.X.X.X‘ (10060 “Unknown error“)問題的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!