MySQL远程连接错误解决:“Host is not allowed to connect to this MySQL server”详解

目录

一、异常错误

通过远程客户端访问MySQL服务器时会遇到"Host is not allowed to connect to this MySQL server"的错误提示。

二、原因

MySQL服务器当前配置不允许来自特定主机的连接尝试。

三、解决方法

允许远程主机访问MySQL服务器,按照以下步骤操作:

  1. 登录本地MySQL服务器

以管理员身份登录到MySQL服务器,输入MySQL root用户的密码:

复制代码
   mysql -u root -p
  1. 选择MySQL数据库

登录成功后,切换到MySQL系统数据库:

复制代码
   use mysql;
  1. 更新用户权限

修改root用户的host字段(或其他需要远程访问的用户),允许任意远程主机(用 '%' 表示)进行连接,但这一步可能涉及到安全风险,建议只针对需要远程访问的特定用户设置具体的远程IP地址,而不是使用通配符 % 开启所有远程访问:

复制代码
   update user set host = '%' where user = 'root';
  1. 刷新权限

    flush privileges;

  2. 防火墙设置

确保服务器的防火墙规则允许MySQL服务端口(默认为3306)上的入站流量。

  1. MySQL配置文件

检查MySQL服务器的配置文件(如 my.cnfmy.ini),确保没有禁止远程连接的相关设置, bind-address 参数通常需要设置为 0.0.0.0 或者指定的公网IP地址以接受远程连接。

  1. 验证远程连接

从远程客户端尝试重新连接到MySQL服务器,确认问题是否已解决。

相关推荐
Databend1 小时前
在 AWS 中国峰会逛了一天,我在 Databend 展台看到了 Agent 数据基础设施的新思路
数据库·人工智能·agent
李白客1 天前
KES新版MySQL兼容能力再升级意味着什么?
mysql·国产数据库
ClouGence1 天前
Oracle 数据同步为什么会出现数据不一致?长事务是常被忽略的原因
数据库·后端·oracle
飞将1 天前
从零实现数据库(2)——HashIndex + IndexManager
数据库
Nturmoils2 天前
订单列表慢查询,先看 WHERE、ORDER BY 和 LIMIT
数据库
渣波2 天前
拒绝 SQL 焦虑!手把手带你用 NestJS + Prisma + DTO 写出“防弹”级后端代码
javascript·数据库·后端
Jim6003 天前
【吃透 MySQL InnoDB连载】第 1 章・解密线上数据库高频故障
mysql
GreatSQL3 天前
gt-checksum v4.0.0 新功能解读系列文章(4):SSL 加密连接——数据校验传输安全再升级
mysql
倔强的石头_3 天前
KingbaseES 新版MySQL 兼容版体验:旧版迁移 + 功能实测
数据库