今天试了一下连接两台电脑的mysql连接,今天突发奇想,不过整个过程花费的时间还挺长。
测试环境:
PC1: win10
安装mysql5.7.31
IP: 192.168.1.202
PC2: win10
安装mysql5.7.31
IP: 192.168.1.203
1. 第一次连接测试
1.1 PC1连接PC2
1.2 PC2连接PC1
1.3 问题解决
在网上查找问题之后发现,是因为防火墙屏蔽了端口,才会ping不通,于是按照提示进行修改,之后果然ping通了,完成了一半。
解决方法就是在计算机的防火墙中,开启文件和打印共享
为ping提供一个端口。
具体步骤
控制面板 -> 系统和安全 -> Windows Defender 防火墙 -> 高级设置 -> 入站规则 -> 文件和打印共享(回显请求 - ICMPv4-In) -> 右键 -> 启用规则
参考资料
2. 数据库用户
因为两台电脑的mysql数据库互相访问,所以用户的host需要改为指定的ip或任意ip。
在此以PC1连接PC2为例,在PC2的mysql数据库中新建用户juki,host可为PC1的ip或%,%表示任意ip,所有的主机都可以访问,这显然不是很安全,这里仅供测试用。
-- 创建用户juki
insert into mysql.user(host,user,authentication_string,ssl_cipher,x509_issuer,x509_subject) values('%', 'juki', password('juki233'), '','','');
-- 使新用户生效
flush privileges;
-- 查看用户信息
select user,host from mysql.user;
参考资料
3. 连接数据库
刚一连接问题又出来了,显示无法连接上远程服务器,之后查找了很多资料,其中大部分是基于linux的mysql服务器,解决方案是注释掉mysql.cnf
文件中bind-address=127.0.0.1
这一行,但这并不能解决我的问题...
终于在最后找到了一个有效的解决方案,这个方案我的简单理解就是为mysql另外开辟一个端口:博客园: windows下远程连接Mysql,我按照步骤进行,终于在最后完成了,NICE~~~