一、背景
MySQL数据库安装在本地Window10电脑上,以便各个虚拟机共同调用同一个数据库。突然发现虚拟机无法连接本地数据库。
二、问题原因及对应解决方案
1、数据库操作用户未设置远程连接权限
- 查看所有用户及权限,观察所要连接的用户是否有外网访问权限【%】:
SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;
- 若需要连接的用户没有外网访问权限,可以根据需要使用以下命令设置
-- 新建MySQL用户: create user 用户名 identified by '登录密码'; -- 授权指定用户访问指定数据库: grant all on 数据库名.* to '用户名'@'%'; -- 删除用户授权 drop user "用户名"@"%"; -- 删除指定用户: DELETE FROM mysql.user WHERE User="用户名"; -- 刷新权限: flush privileges;
2、Window10 未开放对应端口
-
打开 Window10 安全中心
-
点击
防火墙和网络保护
,点击高级设置
选项
-
新弹开窗口选择
入站规则
>新建规则
-
新弹开窗口选择
端口
>下一步
-
填写所需开放端口号,点击下一步:
-
后面一直点击
下一步
按钮即可,最后名称
随便填写,点击完成