现在有这么一个样例:用户A 想要远程连接并操作 用户B 电脑上的 MySQL 数据库。
首先要确保 用户A 和 用户B 处于同一个局域网中,用户A 能够 ping 通 用户B 电脑网络所处的 IP 地址,并且双方电脑都安装了 MySQL 服务,并且能够正常使用 MySQL 数据库,并且最好确保双方的网络配置相同(公用 or 专用)
本地机用户A:192.168.60.230
服务端用户B:192.168.60.211
因为电脑出于安全都是开启防火墙的,因此 用户B 的电脑作为服务端的电脑,其防火墙会拒绝外来用户 用户A 的访问,用户A 可以通过 ping 命令访问 用户B 的 IP地址 来验证是否能连接成功。
解决能够 ping 通访问服务端电脑的方案主要有两个:
简单粗暴直接关闭作为服务端电脑(用户B)的防火墙作为服务端电脑(用户B)设置本机防火墙的入站规则
出于安全性考虑,我们肯定优先选择第二种方案。
在 ping 通并且配置了入站规则之后,我们要在作为服务端用户B的MySQL数据库中给用户A授权:
MySQL 8.0以下版本
grant all privileges on *.* to '自定义用户A的用户名'@'%' identified by '自定义用户A的密码';flush privileges;
MySQL 8.0以上版本(用户名保持一致)
create user '自定义用户A的用户名'@'%' identified by '自定义用户A的密码';grant all privileges on *.* to '自定义用户A的用户名'@'%'; flush privileges;
之后用户A就能够通过用户B授权的用户名与密码进行登录访问了