天天看点

【mysql日常】 Mysql在Windows环境下开启远程连接 外部测试navicat

文章目录

  • ​​问题描述​​
  • ​​问题解决​​
  • ​​扩展​​

问题描述

【mysql日常】 Mysql在Windows环境下开启远程连接 外部测试navicat

问题描述:1130- host ‘Thexing’ is not allowed to connect to this MySQL server

大致意思就是 名thexing的机器不允许 连接mysql 服务

这里采用终端的也会报同样的错误,当时用localhost 和127.0.0.1就不会报错, 这个是因为没有开启 mysql的远程连接.

【mysql日常】 Mysql在Windows环境下开启远程连接 外部测试navicat

问题解决

开启连接步骤:

1.输入本地的mysql连接

这里的127.0.0.1相当于 localhost

【mysql日常】 Mysql在Windows环境下开启远程连接 外部测试navicat

2.输入use mysql;

【mysql日常】 Mysql在Windows环境下开启远程连接 外部测试navicat

3.输入update user set host = ‘%’ where user =‘root’;

【mysql日常】 Mysql在Windows环境下开启远程连接 外部测试navicat
  1. 查看当前user表里面是否出现‘%’,命令:
select user,host from user;      
【mysql日常】 Mysql在Windows环境下开启远程连接 外部测试navicat

5.输入flush privileges;

【mysql日常】 Mysql在Windows环境下开启远程连接 外部测试navicat

注:flush privileges 命令的作用是将当前 user 和 privilige 表中的用户信息/权限设置从 mysql 库 (MySQL数据库的内置库) 中提取到内存里。MySQL用户数据和权限出现修改后,希望在"不重启MySQL服务"的情况下直接生效,就需要执行这个命令。

在修改某个帐号的设置后,避免重启,那么 flush privileges 之后就可以使权限设置生效。

6.输入quit;退出,我这里习惯简写\q;

【mysql日常】 Mysql在Windows环境下开启远程连接 外部测试navicat

建议使用navicat连接数据库

【mysql日常】 Mysql在Windows环境下开启远程连接 外部测试navicat

我们也可以-h 加上ip的方式来进行验证

【mysql日常】 Mysql在Windows环境下开启远程连接 外部测试navicat

大功告成!

扩展

连接过程会遇到10038错误,原因是没有开启端口连接所以需要执行以下操作

【mysql日常】 Mysql在Windows环境下开启远程连接 外部测试navicat

需要开发3306这个端口