mysql设置远程主机访问
环境说明:
mysql: 8.0.28 for Win64 on x86_64
当自己搭建mysql,其他主机需要连接时,可能会报错[1130-host ... is not allowed to connect to this MySql server
遇到这个问题,先去到mysql的服务器上,连接进mysql
>: mysql -u root -p
然后查看一下所有的用户以及主机信息
>: use mysql;
>: select Host, User from user;
+-----------+------------------+
| Host | User |
+-----------+------------------+
| localhost | mysql.infoschema |
| localhost | mysql.session |
| localhost | mysql.sys |
| localhost | root |
+-----------+------------------+
7 rows in set (0.00 sec)
然后就可以看到,root账号是只有localhost主机才能访问的,其他主机无法访问
那么有两种解法:
修改用户的主机地址
>: update user set Host='<主机地址>' where User='root';
>: flush privileges;
增加一个新的用户以及地址
%
代表除本机外所有地址均可访问
# 虽然也叫root,但是其实是一个新的用户,可以查看user表,就能发现两条记录
>: create user 'root'@'%' identified by '123456';
# 授权所有库表的读写权限
>: grant all on *.* to 'root'@'%';
标签:主机,访问,user,mysql,root,远程,localhost
From: https://www.cnblogs.com/lucky75/p/16719794.html