連接mysql數據庫時提示2003-can t connect to MySQL server on ip(10060)的解決辦法


因為windows系統有時會出現自動更新,重啟電腦后可能會出現連接不上mysql的問題。如圖所示:

分析該問題,導致這種狀況出現的一般有四個原因:mysql服務器未開啟bind-address 對於連接的ip做了一個限定數據庫用戶只能在指定的ip上連接防火牆大多數情況下是防火牆的問題,可以跳過前面的三個步驟,直接進行防火牆的檢查。下面是檢查的具體操作:

第一個檢查:確認mysql服務器啟動成功

點擊“此電腦”右鍵打開管理進入注冊表環境中

選擇左邊欄目中的服務與應用程序的子目錄“服務”

進入“服務”后,我們可以看到所有服務的運行情況。在鍵盤上輸一個“m”,找到mysql的位置。

打開mysql,查看服務器是否在運行中。如果處於停止狀態,可以手動打開。因為手動打開,操作起來比較麻煩,可以選擇啟動方式為自動,下一次在UI界面連接數據庫時就可以不用手動啟動服務器。

第二個檢查:確認mysql是否已經開啟遠程連接

在cmd中登錄本機mysql服務,使用mysql數據庫點擊“win+R”,打開運行,在運行輸入框里面輸入"cmd"。如果第一次在cmd中打開mysql,會出現下面的情況。

Ps:解決辦法

選中“此電腦”,點擊右鍵選擇屬性->“高級系統設置”

 

接着點擊“高級”下的“環境變量”

在環境變量系統變量里面找到"path",點擊編輯,如下圖所示:

按“win+D”切換到桌面,找到mysql的安裝目錄,復制其地址到path中,用英文分號分割path先前的內容,然后一直點擊確定。

這樣就配置好了環境變量,重新打開cmd登錄本機mysql服務,使用mysql數據庫

輸入select host,user from user; 顯示如下,表示已經可以遠程連接。然后flush privileges;進行刷新(平時更改配置的時候基本是需要刷新的,不管是windows還是linux)

若沒有如圖顯示,則首先對mysql授權遠程連接。如下:

登錄本機mysql,使用mysql數據庫,因為用戶表都是存在mysql數據庫里面的。

輸入命令:GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;

'root'@'%' 中,root表示授權的用戶,@表示授權的IP,@表示授權所有IP。在這里,我們采用的是授權所有IP的所有功能,當然,我們還可以對數據庫的某些功能進行限定。

1.    檢查mysql的配置文件(一般在mysql安裝目錄下的mysql.ini),用記事本打開檢查是否有綁定IP,即bind-address,若有,即用#注釋或者刪除即可,同時查看是否允許TCP/IP。

4. 防火牆設置

可以檢查一下windows防火牆是否關閉我們先關閉防火牆,然后再嘗試連接。

http://img.blog.csdn.net/20160603210237617?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center
經過上面常見的檢查以后,mqsql應該可以成功連接了。如果還有問題,我們可以檢查我們的網絡是否通了,有沒有對應好局域網與公網的防火牆之類的。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM