遠程連接MySQL失敗,可能有一下原因:
1、小伙子/小姑涼注意一下你的ip是否輸入正確了!!
2、網路或防火墻問題
1)、排查網路問題
使用命令:ping 192.168.1.1 查看網路請求是否超時,
正常接收資料進行下一步排查
2)、排查云服務器防火墻是否將其擋住,
使用命令:telnet 192.168.1.1 3306,如果連接失敗,有兩個原因
a)、查看云服務器埠是否開放,
開放情況(我這邊使用的是阿里云):

開放埠配置:

如果云服務器的埠已經開放了,但是還是訪問不到服務器的3306埠,接著往下看,
b)、查看服務器查看防火墻是否開啟,
# systemctl status firewalld

我這邊服務器是未開放狀態,所以就不存在被防火墻攔截這一說,
如果開啟了防火墻,telnet還是失敗,那就通過netstat查看3306的埠狀態:
# netstat -talnp 3306 tcp6 0 0 :::3306 :::* LISTEN 4591/mysqld (正常情況)
如果netstat 3306 埠沒有出現上面的情況,那么需要你將你本機的mysql服務啟動動一下再次進行線下連接,
3、檢查用戶訪問權限
1)、進入msyql
2)、查看用戶訪問權限

如圖所示,查看你遠程賬戶(User)所對應的 Host 是否為 %;
如果遠程賬戶所對應的Host為 127.0.0.1/localhost,那么這個用戶就只能本機訪問,其它機器用這個用戶帳號訪問是沒有權限,必須host改為%,表示允許所有機器訪問,
修改命令如下:
mysql> update user set host='%' where user='你要修改的賬戶'; ##修改成功后記得重繪一下權限 mysql> flush privileges;
最后在查看一下權限,進行遠程連接,
如有不對之處希望大家指點,共同進步,謝謝!

轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/70562.html
標籤:MySQL
