使用Navicat Premiun遠程鏈接MySQL失敗,報錯(10038)

遠程鏈接MySQL失敗,可能有一下緣由:mysql

一、小夥子/小姑涼注意一下你的ip是否輸入正確了!!

二、網絡或防火牆問題

  1)、排查網絡問題sql

    使用命令:ping 192.168.1.1 查看網絡請求是否超時。服務器

    正常接收數據進行下一步排查網絡

  2)、排查雲服務器防火牆是否將其擋住。tcp

    使用命令:telnet 192.168.1.1 3306,若是鏈接失敗,有兩個緣由阿里雲

    a)、查看雲服務器端口是否開放。spa

       開放狀況(我這邊使用的是阿里雲):3d

       

 

        開放端口配置:code

           

       

 

       若是雲服務器的端口已經開放了。可是仍是訪問不到服務器的3306端口。接着往下看。blog

    b)、查看服務器查看防火牆是否開啓。

# systemctl status firewalld

    

 

    我這邊服務器是未開放狀態,因此就不存在被防火牆攔截這一說。

    若是開啓了防火牆,telnet仍是失敗,那就經過netstat查看3306的端口狀態:

# netstat -talnp 3306 tcp6 0      0 :::3306                 :::*                    LISTEN      4591/mysqld     (正常狀況)

     若是netstat 3306 端口沒有出現上面的狀況。那麼須要你將你本機的mysql服務啓動動一下再次進行線下鏈接。

三、檢查用戶訪問權限

   1)、進入msyql

   2)、查看用戶訪問權限

     

 

    如圖所示,查看你遠程帳戶(User)所對應的 Host 是否爲 %;

    若是遠程帳戶所對應的Host爲 127.0.0.1/localhost,那麼這個用戶就只能本機訪問,其它機器用這個用戶賬號訪問是沒有權限,必須host改成%,表示容許全部機器訪問。

    修改命令以下:

mysql> update user set host='%' where user='你要修改的帳戶'; ##修改爲功後記得刷新一下權限 mysql> flush privileges;

    最後在查看一下權限,進行遠程鏈接。

 

若有不對之處但願你們指點。共同進步,謝謝!

相關文章
相關標籤/搜索