解決遠程連接MySQL報錯:2003 - Can‘t connect to MySQL server on ‘X.X.X.X‘ (10060 “Unknown error“)問題
問題
先看報錯:
2003 - Can’t connect to MySQL server on ‘X.X.X’ (10060 “Unknown error”)。
意思是服務器遠程連接出錯:未知錯誤。
解決方案:
遇到這個問題,首先想到的是權限不夠。那咱就給它賦權。
首先登錄MySQL數(shù)據(jù)庫:mysql -u用戶名 -p密碼;
然后:use mysql;
進入數(shù)據(jù)庫后我們先看看mysql user初始的權限表長啥樣,輸入sql語句:
select Host,User from user;
有結果:
+-----------------------+------+ | Host | User | +-----------------------+------+ | 127.0.0.1 | root | | ::1 | root | | localhost | | | localhost | root | | localhost.localdomain | | | localhost.localdomain | root | +-----------------------+------+ 6 rows in set (0.00 sec)
看到這里就比較明了了,由于我們是遠程連接訪問mysql,需要開放主機權限。這里我們將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)
好了,權限修改成功了。我們就可以嘗試連接數(shù)據(jù)庫了。
是的,你沒看錯,它還是不成功,問題出在哪呢。想了好久,突然就在一念之間:會不會是防火墻的問題?
于是我嘗試關閉防火墻,然后連接,來不及反應,很快呀,直接連接成功。
[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳
現(xiàn)在是連接成功了,但是我關閉防火墻之后又連不了了,咱也并不能永久關閉防火墻吧。
于是我查了查,應該是端口沒有開放,導致的連接失敗。輸入命令:
systemctl start firewalld.service firewall-cmd --zone=public --add-port=3306/tcp --permanent firewall-cmd --reload
后面就可以正常連接了。
總結
連接失敗是所用主機沒有訪問遠程服務器的權限,這里可以通過修改權限解決。但是在使用MySQL服務前需要開放端口號3306,或者直接關閉防火墻。
到此這篇關于解決遠程連接MySQL報錯:2003 - Can‘t connect to MySQL server on ‘X.X.X.X‘ (10060 “Unknown error“)問題的文章就介紹到這了,更多相關MySQL報錯2003 Can‘t connect to MySQL內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
- 詳解遠程連接Mysql數(shù)據(jù)庫的問題(ERROR 2003 (HY000))
- mysql啟動時出現(xiàn)ERROR 2003 (HY000)問題的解決方法
- 解決MySQL啟動報錯:ERROR 2003 (HY000): Can''t connect to MySQL server on ''localhost'' (10061)
- mysql:ERROR?2003?(HY000)故障錯誤解決方法與思路
- mysql錯誤代碼error2003的問題及解決
- 解決ERROR?2003?(HY000):?Can‘t?connect?to?MySQL?server?on?‘localhost‘?(111)的問題
- mysql出現(xiàn)ERROR?2003?(HY000):?Can‘t?connect?to?MySQL?server?on?‘localhost‘?(10061)的解決方法
相關文章
淺析drop user與delete from mysql.user的區(qū)別
本篇文章是對drop user與delete from mysql.user的區(qū)別進行了詳細的分析介紹,需要的朋友參考下2013-06-06MYSQL數(shù)據(jù)庫使用UTF-8中文編碼亂碼的解決辦法
這篇文章主要介紹了MYSQL數(shù)據(jù)庫使用UTF-8中文編碼亂碼的解決辦法,需要的朋友可以參考下2015-10-10為什么說MySQL單表數(shù)據(jù)不要超過500萬行
在本篇文章里小編給大家整理了一篇關于為什么說MySQL單表數(shù)據(jù)不要超過500萬行的相關內(nèi)容,有興趣的朋友們閱讀下吧。2019-06-06MySQL8設置自動創(chuàng)建時間和自動更新時間的實現(xiàn)方法
在實際應用中,我們時常會需要用到創(chuàng)建時間和更新時間這兩個字段,下面這篇文章主要給大家介紹了關于MySQL8設置自動創(chuàng)建時間和自動更新時間的實現(xiàn)方法,需要的朋友可以參考下2023-03-03