在本地使用Navicat远程连接Linux上的MySQL数据库,报错: 1130-host ... is not allowed to connect to this MySql server
硬翻译,就是"本地不被允许与MySQL服务器连接",说人话,就是账号不允许远程登录,只能在localhost.
系统环境是Ubuntu 16.04、Navicat 8 for MySQL
解决方法
1.在装有数据库的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%":
2.登入MySQL:
~$ mysql -u root -p
Enter password:
3.切换数据库,
mysql>use mysql;
查看root账号的登录权限,
mysql>select host, user from user;
修改登录权限
mysql>update user set host = '%' where user = 'root';
刷新,生效,最后一步,至关重要
mysql>flush privileges;
注意
刷新生效是最重要一步.Navicat连接Ubuntu数据库,直接使用ip地址连接,不需要配置SSH连接.