在 mysql 中,默认用户 user 的 host 属性都是 localhost,也就是这个用户只能连接本地的数据库实例,如果要使用该用户来远程登录其他主机的数据库实例,就必须必须将用户的 host 属性值更改成 %
host 指定了用户要连接的数据库实例所在主机的 IP,比如 user=root Host=192.168.1.1。这里的意思就是说 root 用户只能连接主机 IP 是 192.168.1.1 的实例。% 是个通配符,如果 Host=192.168.1.%,那么就表示只要数据库实例所在主机的 IP 地址前缀为 “192.168.1.”,该用户就可以连接这个数据库实例。如果 Host=%,表示要连接的数据库实例所在的主机 IP 可以为任意 IP 段。(不同网络下,主机的 IP 不一定相同)

修改host的步骤

在cmd中输入以下命令:

(1)root用户登陆mysql

mysql -u root -p

(2)登录后,切换数据库

use mysql

(3)修改用户的host

update user set host = '%' where user ='root';

(4)修改完成,可以查询用户对应的host

SELECT Host,User FROM mysql.user;

结果如下
在这里插入图片描述
经过以上步骤,就可以连接任意主机的数据库。

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐