不允许主机 xxxx 连接到此 MySQL 服务器

Host xxxx is not allowed to connect to this MySQL server

好吧,在阅读了同名主题但没有成功之后,我不得不再次提问并向您展示我的场景:

我在 Kali Linux 机器上,我的 mysql 配置文件 (/etc/my.cnf) 是这样设置的:

bind-address = 172.16.1.228

我重置了我无法远程或本地进入的服务,根据我的访问方式,我得到了这 2 个错误:

root@Adkadon:~# mysql -u root -p -h 172.16.1.228
Enter password: 
ERROR 1130 (HY000): Host 'Adkadon' is not allowed to connect to this MySQL server

mysql -u root -p -h 127.0.0.1
Enter password: 
ERROR 2003 (HY000): Can't connect to MySQL server on '127.0.0.1' (111)

请注意,如果没有 -h 127.0.0.1,我将永远无法访问。

所以,我更改 my.cnf 并将绑定地址设置为 0.0.0.0。

我这样访问:mysql -u root -p -h 127.0.0.1,我执行以下操作:

GRANT ALL PRIVILEGES ON *.* TO root@172.16.1.228 BY ‘root‘ WITH GRANT OPTION;

再次将绑定地址更改为 172.16.1.228,但没有成功。

这是数据库中 SELECT user,host FROM user; 的输出:

root             | 127.0.0.1    |
| root             | 172.1.16.228 |
| root             | ::1          |
| debian-sys-maint | localhost    |
| root             | localhost    |
| root             | repo   

我不知道要做什么,知道吗?非常感谢

如果我猜对了,172.1.16.228 就是你的 mysql 服务器的 IP。 'Adkadon' 是您尝试从中访问 mysql 的主机。

如果是这样,获取 Adkadon 的 IP 地址 (ifconfig)

假设 172.1.16.xxx 是您的主机 IP,则在 my.cnf 中提及

bind-address = 172.16.1.xxx 这表示仅允许来自 172.16 的连接。1.xxx

创建用户root@172.16.1.xxx

并连接到 mysql ,使用命令

mysql -u root -p -h 172.1.16.228

请注意,-h 172.1.16.228 表示要连接到哪里,而不是从哪里连接。

它能解决您的问题吗?或者我从你的问题中遗漏了什么?