工作主要为两部分, 一部分是 Windows 防火墙, 一部分是 MySQL 自身
Windows 端口远程访问
其实就是在 Windows 防火墙中加一条特定端口的入站规则
- 控制面板→系统和安全→Windows防火墙
- 点击左侧菜单中的 "高级设置"
- 在 "高级设置" 窗口左侧右键点击 "入站规则"
- 此时右侧菜单出现 "新建规则" 选项, 点击
- 在“要创建的规则类型”中,点选“端口”,下一步,选择“TCP”,“特定本地端口” 中填入端口号3306 (或实际的 MySQL端口)
- 点击“下一步”,点选“允许连接”,再点“下一步”,根据用户的实际情况和需求勾选域、专用或共用等选项,最后为这个规则命名
- 此时该端口已经可以被远程访问, 80 等其他端口也是这样设置的
MySQL 远程访问
思路就是为远程用户名添加其他主机的访问权限
mysql -u root -p
# 输入密码进入 mysql
use mysql;
# 以下命令选其一即可, 推荐第一种
# 第二种字段可能有所改变, 根据实际情况确定
grant all privileges on '想远程访问的数据库名'.* to 'root'@'%' identified by "password";
update user set host = '%' where user = 'root';