關注公衆號,回覆「加羣」一塊兒學習!前端
最近加班挺多,因此也很久沒遠程訪問本身雲服務器上的MySQL
數據庫了。今天本地啓動Node
服務時連不上MySQL
,照經常使用Navicat For MySQL
鏈接遠程數據庫進行檢查,結果發現忽然報錯了。mysql
2003-Can’t connect to MySQL server on ‘XXX.XX.XX.XX’(10060)
檢查網絡
第一反應仍是檢查網絡是否是正常,因此就立刻ping
測試一下,然而發現並非網絡問題,能夠正常ping
通。web
ping XXX.XX.XX.XX
正在 Ping XXX.XX.XX.XX 具備 32 字節的數據:
來自 XXX.XX.XX.XX 的回覆: 字節=32 時間=64ms TTL=47
來自 XXX.XX.XX.XX 的回覆: 字節=32 時間=86ms TTL=47
檢查安全組
而後就想着看看雲服務器的安全組設置是否有問題,可是以前都沒出過這個問題,講道理安全組出現問題的可能性不大,但仍是先檢查下爲妙。sql
登陸騰訊雲後,發現實例對應的安全組設置妥妥的,沒有什麼問題。shell
檢查下用戶權限
因爲是我本身的服務器,因此用的都是root
用戶。須要在xshell
中登陸MySQL
查詢下user
表。數據庫
mysql -uroot -p
輸入密碼
mysql> use mysql
mysql> select host,user from user;
+-----------+------------------+
| host | user |
+-----------+------------------+
| % | root |
| localhost | mysql.infoschema |
| localhost | mysql.session |
| localhost | mysql.sys |
+-----------+------------------+
4 rows in set (0.00 sec)
能夠發現,root
對應的host
是%
,任意的意思,也就意味着root
用戶在鏈接MySQL
時不受ip
約束。小程序
因此說也不是這裏的問題啦!centos
檢查CentOS防火牆
這是很容易忽略的一步,可能不少人都會認爲安全組已經設置好了,沒必要再檢查CentOS
的防火牆。實際上是頗有必要檢查防火牆的,咱們應該把3306
放通,再重啓防火牆。安全
[root@VM_0_14_centos ~]# firewall-cmd --permanent --zone=public --add-port=3306/tcp
success
[root@VM_0_14_centos ~]# firewall-cmd --reload
success
而後一看,很愉快,Navicat for MySQL
鏈接遠程數據庫成功!服務器
1. 爲了方便交流,我這裏也建了一個微信羣。公衆號回覆「加羣」,便可進羣交流!
推 薦 閱 讀
本文分享自微信公衆號 - 大前端技術沙龍(is_coder)。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。