使用Navicat连接Linux下的MySQL时,我遇到 2003-Can't connect to MySQL on '192.168.1.2'(XXXX)的错误.windows与虚拟机之间在一个网段,试了好久总是连接失败.最终的原因是MySQL的配置不正确.
此类问题出现的原因有很多,这里我只把我出现的问题写下来.MySQL服务开启之后,如果你用:netstat –au | grep 3306 (mysql 默认端口号为3306)命令查看就会发现它默认的监听地址只为本机地址,需要将配置文件相关设置修改为监听所有地址.
1.打开MySQL的配置文件,配置文件是/etc/mysql/my.cnf.打开之后将bind-address一项修改为:bind-address = 0.0.0.0
2.重启MySQL服务.
3.如果没有赋予远程登录用户访问权限,会有报出相应错误,还需要添加权限:
1).GRANT ALL ON *.* TO userName@”%” IDENTIFIED BY “password”;
2).FLUSH PRIVILEGES;
上面第一条命令赋予userName用户可以在任意机器上访问MySQL.
Navicat客户端的配置就不用多说了,一看就明白应该怎么填写.
在连接之前需要设置防火墙.如果不想关闭防火墙,则将Navicat添加到入站规则中,协议为TCP,本地端口设为3306.Linux Mint 下运行:sudo ufw disable.