大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE稳定放心使用
前言
在一局域网中,有两台主机,主机1是Windows 10系统,主机2是Windows 7系统,其中,主机1的IP是192.168.8.107,主机2的IP是192.168.8.106。已知两主机上的QQ是可以互相通信的(即两主机可访问外网也可互相通信),现要求安装在主机2中的SQLyog远程连接安装在主机1的MySQL服务器,经过分析,连接之前,可能会遇到两层阻挡,一层阻挡是主机中的防火墙会阻挡别的主机的访问,另一层阻挡是MySQL服务器还没有开放远程连接的权限。如下为基于这两层阻挡,使用SQLyog远程连接MySQL的基本步骤。
安装MySQL
在Windows 10中安装MySQL数据库,版本是mysql-8.0.19-winx64。
安装SQLyog
在Windows 7中安装SQLyog,版本是12.08。
创建新连接
打开Windows 7中的SQLyog,创建新连接,输入新连接的基本信息(MySQL所在主机IP:192.168.8.107,用户名:root,密码:123456,端口:3306),然后点击测试连接
。
点击测试连接
后,可能会出现如下的2003错误
,错误表明SQLyog无法连接到指定主机的MySQL服务器(其实是连主机都没有连接到,更别说主机中的MySQL服务器了)。
出现2003错误
的原因之一是Windows 7和Windows 10中防火墙禁止它们的连通,这可通过ping命令
验证,如下表明Windows 7主机192.168.8.106
无法通过ping命令
连通Windows 10主机192.168.8.107
。同样,Windows 10也无法ping通Windows 7。
解决方案是关闭Windows防火墙,如下,步骤是:控制面板->系统和安全->Windows防火墙->自定义设置->关闭相应网络的防火墙
。
关闭Windows 7防火墙的结果是:Windows 7还无法ping通Windows 10,但Windows 10可以ping通Windows 7了。接着要做的是关闭Windows 10的防火墙,步骤是:控制面板->系统和安全->Windows Defender防火墙->自定义设置->关闭相应网络的防火墙
。如此,Windows 7和Windows 10之间就可以相互ping通了。
Windows 10 ping通Windows 7。
Windows 7 ping通Windows 10。
至此,再点击测试连接
,可能会发现2003错误
没了,但是又出现了如下的1130错误
,1130错误
表明指定主机不允许连接到MySQL服务器。这说明主机之间是可以连接了,但MySQL服务器还不允许SQLyog连接。
对于MySQL服务器不允许SQLyog连接的解决步骤如下:
(1)使用root用户登录MySQL数据库:输入命令mysql -u root -p
,回车,再输入密码;
(2)切换到mysql数据库:mysql> use mysql
;
(3)查询user表中root用户的主机信息:mysql> select user,host from user;
;
(4)修改root用户的主机信息改为%
:update user set host='%' where user='root'
;
(5)再次查询user表中root用户的host信息,host信息已经修改为%
了:mysql> select user,host from user;
(6)刷新权限,使得修改操作生效:mysql> flush privileges;
,如果不使用刷新权限语句,使用service mysql restart
重启MySQL数据库服务也是可以的。
MySQL的运行结果如下:
给予了root
用户允许远程连接权限
后,再点击测试连接
后,发现,连接成功了。
经过测试连接
成功后,点击连接
,成功,就出现了如下的界面,界面左侧的内容表明安装在主机192.168.8.107
的MySQL数据库中有一个root
用户,此用户可访问四个数据库。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/182305.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...