环境:mysql5.7.11 + windows10 64位
问题现象:使用mysql远程登录命令mysql –uroot –h192.168.1.102 –p时,报错MySQL ERROR 1130 (HY000): Host ‘XXXX’ is not allowed to connect to this MySQL server
问题原因:mysql服务器出于安全考虑,默认只允许本地登录数据库服务器。
问题解决:登入mysql后,更改 “mysql” 数据库里的 “user” 表里的 “host” 项,从”localhost”改称”%”,然后重启mysql这样就允许所有的远程机器进行访问了。
步骤1:修改mysql表
mysql -u root -pvmware
mysql>use mysql;
mysql>update user set host = ‘%’ where user = ‘root’;
mysql>flush privileges;
mysql>select host, user from user;
mysql>quit
步骤2:重启mysql
方法1:在windows设置中找到“查看本地服务”,找到mysql服务,重启mysql服务
方法2:
win7 或者XP 直接 在cmd 命令行中打 net stop mysql/net start mysql来启停服务。
win8及以上版本需要使用管理员权限才能使用cmd命令启动服务,笔者使用的是windows10,所以需要找到cmd.exe,右键后选择“以管理员身份运行”,然后再输入net stop mysql/net start mysql来启停服务。
步骤3:再次使用远程登录命令,就登录成功了。