解决Navicat连接MySQL不成功的问题

因为在虚拟机上使用MySQL不方便保存数据,尝试在Windows上使用Navicat连接Linux虚拟机上的MySQL。

在Navicat中输入用户名/密码后,提示

Can't connect to MySQL server on '<MySQL Server IP>' (10061 "Unknown error")

解决方法:

  1. 修改 /etc/mysql/mysql.conf.d/mysqld.cnf ,将其中的 bind-address = 127.0.0.1 注释掉,保存。
  2. 运行 service mysql restart ,重启 MySQL。

接下来再尝试在Navicat中连接MySQL,又提示

1130 - Host '<MySQL Server IP>' is not allowed to connect to this MySQL server

因为默认情况下root用户只允许本机访问,即只能使用localhost访问。所以需要将root对应的host修改大一点,这里简单起见直接修改为所有IP访问。

解决方法:

在虚拟机上以root登录MySQL。然后执行

1
2
3
mysql> use mysql;
mysql> update user set host = '%' where user = 'root';
mysql> flush privileges;

现在再用Navicat连接MySQL就可以连接成功了。

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×