Host is not allowed to connect to this MySQL server解决方法

在阿里云服务器上安装了Mysql数据库,在阿里云上使用一切正常。我用navicat 去连接服务器时显示Host is not allowed to connect to this MySQL server。

​ 看见这个错误,第一反应是是不是阿里云服务器防火墙没有配置mysq的出入站规则。去阿里云检查了一下发现并不是这个原因。然后就去网上找资料。

​ 这个错误,其实就是我们的MySQL不允许远程登录,所以远程登录失败了,解决方法如下:

  • 在装有MySQL的机器上登录
sql 复制代码
MySQL mysql -u root -p密码
  • 执行
sql 复制代码
use mysql;
  • 执行
sql 复制代码
update user set host = '%' where user = 'root';
  • 执行
sql 复制代码
FLUSH PRIVILEGES;
  • 经过上面4步,就可以解决这个问题了。

最后:

​ 在数据库中查询:select user,host from user ;

修改以后的root 账号的host 是% ,而其他的账号则为localhost 。我们可以看出host的作用是限制ip地址登录。localhost 是仅为本地登录。%为通配符,可以使任意ip地址进行登录访问。

在找资料的时候看见的,觉得以后可能会看,就先放在这里了。

相关推荐
码上谈兵9 小时前
一次 MySQL 连接池打满,我花一晚上重构了 Go 的数据库操作
mysql
夕除10 小时前
spring boot 13
java·mysql·spring
WAIT_TIME10 小时前
基于 Docker 快速构建 MySQL InnoDB Cluster 高可用集群与 Router 读写分离
mysql·docker·集群·innodb cluster
Full Stack Developme10 小时前
SQL like 与 正则 区别
数据库·sql·mysql
我是一颗柠檬11 小时前
【MySQL全面教学】MySQL多表查询与JOIN Day6(2026年)
数据库·后端·sql·mysql
今天背单词了吗98011 小时前
MySQL InnoDB引擎八大核心特性详解(高频面试题)
java·数据库·mysql
我也不曾来过112 小时前
MYSQL 使用C语言链接
数据库·mysql
摇滚侠12 小时前
Docker 安装 MySQL 8
mysql·docker·容器
牛马鸡niumasi12 小时前
Mysql:事务管理(上)
数据库·mysql
天海华兮12 小时前
【优】B+树,Mysql优化 慢查询 执行计划 优化表结构 避免死锁 大量插入数据大数据后果
b树·mysql·死锁·慢查询·优化表结构·大量插入数据