navicat無法遠端連線mysql的解決方法

yzf01發表於2021-09-09

近日在Ubuntu上安裝了一個 MySQL 5.0,因為使用 phpMyAdmin 還必須安裝 PHP,所以打算直接使用遠端管理工具Navicat for MySQL 來連線。

在 Ubuntu 中透過 mysql 命令列建立好一個資料表並分配了許可權:


複製程式碼 程式碼如下:
GRANT ALL ON testdb.* TO usera IDENTIFIED BY ‘passwd'


然後重啟載入許可權:


複製程式碼 程式碼如下:
mysqladmin –uroot –p flush-privileges


之後使用 Navicat 連線時仍然提示沒有許可權:


複製程式碼 程式碼如下:
2003 – Can't connect to MySQL server on ‘ubuntu'(10061)


檢視 mysql.user 表,usera 的確已經有了任意主機訪問的許可權。

於是想到是不是 MySQL Server 繫結了本地地址,開啟 /etc/mysql/my.cnf,找到:


複製程式碼 程式碼如下:
bind-address = 127.0.0.1


去除 IP 地址繫結,把它改為:

複製程式碼 程式碼如下:
bind-address = 0.0.0.0


然後重啟 MySQL Server:


複製程式碼 程式碼如下:
/etc/init.d/mysql restart


這樣 Navicat 就可以正常連線了,Debian下應該也有同樣的問題。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/2334/viewspace-2804243/,如需轉載,請註明出處,否則將追究法律責任。

相關文章