1130 - Host 'localhost' is not allowed to connect to this MySQL server怎么解决
时间: 2024-12-29 16:27:00 浏览: 67
### 解决 MySQL 错误 1130 Host 'localhost' is not allowed to connect
当遇到 `Host 'localhost' is not allowed to connect` 的错误时,通常是因为 MySQL 用户权限设置不当所致。以下是详细的解决方案:
#### 修改用户权限
为了允许特定主机访问 MySQL 数据库,需登录到具有管理员权限的 MySQL 控制台并执行以下 SQL 命令来创建新用户或修改现有用户的权限。
对于本地连接问题,可以尝试更新 root 用户或其他已有用户的权限以确保 localhost 可以正常访问[^1]:
```sql
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY 'your_password';
FLUSH PRIVILEGES;
```
如果希望更改为通过 IP 地址而非 Unix socket 方式连接,则应编辑配置文件 `/etc/mysql/my.cnf` 或者相应的路径下的 my.ini 文件,在 `[mysqld]` 部分添加 bind-address 参数指定监听地址为本机IP而不是默认的 127.0.0.1[^2]:
```ini
[mysqld]
bind-address = 0.0.0.0
```
重启服务使更改生效之后再测试是否能够成功建立连接。
另外一种情况可能是防火墙阻止了端口通信,确认操作系统自带以及硬件设备上的防火墙规则已开放必要的 TCP/IP 端口号 (通常是 3306)[^3]。
最后记得验证客户端工具(如 Navicat)中的服务器名称/地址填写正确无误,并且密码输入准确无误。
阅读全文
相关推荐


















