記一篇mysql安裝之后無法使用navicat連接的問題


 

最近在做數據庫遷移的時候,需要在一台全新機器上部署mysql,於是呢,我把舊機器上的mysql版本和配置文件全部挪了過來,並啟動了mysql,一切看似都很順利。。。。。

安裝好配置完成密碼之后,興沖沖的跑去navicat連着試一下,結果。。。啪,連不上。。。。

 

於是呢,到處找經驗,大致的意思就是客戶端沒有權限登錄,於是按照推薦的方式查看了權限 select user,hosts from user;

這不是妥妥的有權限嗎????

  這里順便記錄下如果沒有權限的話怎么處理,很簡單,控制台登錄mysql,

    use mysql;   切換到mysql表

    grant all privileges on *.* to root@"%" identified by "123456";   給所有的ip添加權限

    flush privileges;   刷新mysql系統權限表,讓生效

    就可以了:

回歸問題:

再次查資料,這次針對性的去查,直接插錯誤碼10038,不查不知道,一查嚇一跳,這TM妥妥的不是3306端口沒有對外開放的意思么,這么簡單直接。。

於是懷疑到兩個地方:

  1、防火牆

  2、配置問題,真的沒有配置對外開放

那么一個一個來看:

iptables -L  走你。。。

並沒有開啟軟件防火牆。。

那么再看一下端口:netstat -anp |grep 3306  截圖沒有篩選,湊合看吧!

果然 ,這里是啥玩意配的,我都看不懂,不管他,反正是不太對,正常情況下應該是127.0.0.1:3306  或者0.0.0.0:3306,前者是只允許本機訪問,后者是所有可訪問,因此我們要用navicat訪問,必須修改為0.0.0.0:3306

於是編輯 vim /etc/my.cfg

添加或者修改    bind-address = 0.0.0.0

重啟在次連接,沒有任何問題。。。

 


免責聲明!

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



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