mysql -u root -p -h 192.168.0.5 -P 3306
Enter password:
ERROR 1130 (HY000): Host '192.168.0.5' is not allowed to connect to this MySQL server
my.cnf改过了,没有效果,问了一下ChatGPT,发现果然是个还是不行。
然后找到了,https://hsk.oray.com/news/36180.html
1.改表法:
如果你的MySQL帐号仅允许在本地登陆,而不允许远程登陆,你可以通过更改 \mysql\ 数据库中的 \user\ 表来修改 \host\ 项。
-在本地MySQL中,执行以下命令:
mysql -u root -p
-进入 \mysql\ 数据库:
use mysql;
-修改 \user\ 表中的 \host\ 项,将 \localhost\ 改为 %\ (表示任何主机):
update user set host = '%' where user = 'root';
-查询修改后的 \host\ 和 \user\ 信息:
select host, user from user;
2.授权法:
通过授权,你可以指定允许远程连接MySQL的用户和主机。
-如果要允许名为 myuser 的用户使用密码 mypassword 从任何主机连接到MySQL服务器,执行以下命令:
GRANT ALL PRIVILEGES ON . TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
-如果要允许用户 myuser 从IP为 192.168.1.6 的主机连接到MySQL服务器,使用密码 mypassword,执行以下命令:
GRANT ALL PRIVILEGES ON . TO 'myuser'@'192.168.1.6' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
3.使修改生效:
在修改授权后,需要刷新MySQL权限,使修改生效:
FLUSH PRIVILEGES;
4.退出MySQL服务器:
当完成所有配置后,退出MySQL服务器:
EXIT;
通过以上步骤,你就可以允许远程主机以指定用户的身份连接到MySQL服务器了。