问题截图:
这种错误是由于以下原因之一引起的:
(一) MySQL 用户权限问题:
使用的 MySQL 用户没有权限从主机连接到 MySQL 服务器
解决方法:
为用户授予主机连接的权限,找到mysql安装目录下的bin,通过cmd进入,执行下面命名
# 进入服务器 mysql -u root -p;
# 切换到 mysql用户 use mysql;
# 查询目前的用户权限 select user,host from user;
# 先把权限还原(只允许本机(localhost, 127.0.0.1)来连接访问) update user set host='localhost' where host='%';
# 设置指定IP访问mysql数据库 IP这里可以使用%来表示所有。 GRANT ALL PRIVILEGES ON *.* TO '账号'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION;
# 执行刷新权限生效 flush privileges;
# 查询IP权限 show grants for root@'IP';
或者直接从mysql数据库中进行修改
找到mysql库下user表,将host修改为%就可以了
(二)MySQL 绑定地址限制
MySQL 服务器可能配置为只监听本地连接(127.0.0.1 或 localhost),而没有监听外部网络的连接请求。
检查 MySQL 配置文件(通常是 my.cnf 或 my.ini)中的 bind-address 设置。
解决方法:
打开 MySQL 配置文件(路径因操作系统而异):
- Linux: /etc/mysql/my.cnf 或 /etc/my.cnf
- Windows: C:\\ProgramData\\MySQL\\MySQL Server X.X\\my.ini
找到 bind-address 配置项,将其改为:
bind-address = 0.0.0.0
重启 MySQL 服务以应用更改
- 任务管理器–服务–mysql–右键重启
(三)防火墙或网络问题
防火墙可能阻止了从主机到 MySQL 服务器的连接
确保 MySQL 服务器的端口(默认是 3306)在防火墙中是开放的
解决方法:
参考这篇博客:win10设置防火墙端口开放及检测开放端口_请检查您的防火墙和端口转发规则-CSDN博客
评论前必须登录!
注册