近日在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下應該也有同樣的問題。