当你尝试连接 MySQL 数据库时,可能会遇到如下错误提示:
ERROR 1130 (HY000): Host 'xxx.xxx.xxx.xxx' is not allowed to connect to this MySQL server
该错误通常表示当前 MySQL 用户没有被授权从你正在使用的主机(IP 地址或域名)进行连接。MySQL 默认只允许本地(localhost 或 127.0.0.1)访问,若需远程连接,必须显式授权。
登录 MySQL 服务器(通常通过命令行),执行以下 SQL 命令:
GRANT ALL PRIVILEGES ON *.* TO 'your_user'@'%' IDENTIFIED BY 'your_password'; FLUSH PRIVILEGES;
其中 '%' 表示允许任意主机连接。如需限制特定 IP,可替换为具体地址,例如 '192.168.1.100'。
确保 MySQL 配置文件(如 my.cnf 或 mysqld.cnf)中未绑定仅限本地:
# 注释掉或修改以下行: # bind-address = 127.0.0.1
修改后重启 MySQL 服务。
确认服务器防火墙或云服务商(如阿里云、腾讯云)的安全组规则已开放 MySQL 端口(默认 3306)。
生产环境中建议避免使用 '%' 全开放权限,应指定可信 IP 并使用强密码,以保障数据库安全。