Navicat Premiun遠端連線MySQL報錯10038解決方案
遠端連線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 3306tcp6 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;
最後在檢視一下許可權,進行遠端連線。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。