navicat无法远程连接mysql的解决方法

时间:2021-09-19 02:06:11

近日在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下应该也有同样的问题。