Navicat for mysql无法连接到mysql是什么原因?
解决办法:
首先远程连接进入服务器,在cmd中输入mysql -u root -p,然后回车,输入密码后回车进入mysql命令行。
输入use mysql;
输入select user,password,host from user; 可以看到host中只有localhost主机。我们需要将xxx.xxx.xxx.xxx也添加到这里才对。
添加方法如下:输入 grant all privileges on *.* to root@”xxx.xxx.xxx.xxx” identified by “密码”;或者 GRANT ALL PRIVILEGES ON *.* TO ‘root’@’xxx.xxx.xxx.xxx’ IDENTIFIED BY ‘123456’ WITH GRANT OPTION;这相当于是给IP-xxx.xxx.xxx.xxx赋予了所有的权限,包括远程访问权限。然后再输入 flush privileges;
再次输入select user,password,host from user; 可以看到host中已经有了新加的IP。
现在再次用Navicat for MySQl访问远程mysql数据库,已经能正常打开了。 问题解决。
如果还是连接不到,那不是 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