虚拟机NAT模式下 Host ‘192.168.x.1‘ is not allowed to connect to this MySQL server 问题解决!

目录

环境:

解决方法:

总结:


环境:

本机地址:192.168.1.101

虚拟机地址(NAT模式):192.168.39.138

刚在虚拟机上面安装好MySQL,但是用工具远程连接时候,报错,在cmd模式下,使用命令

mysql -h 192.168.39.138 -u root -p yourpsswd 中报Host '192.168.39.1' is not allowed to connect to this MySQL server。奇怪的是我们连接的是192.168.39.138 :报的错误却是我NAT模式下,网卡的地址;其实很简单,在NAT模式下,在NAT的网络内,我们本机的IP地址 就是192.168.39.1

解决方法:

在Linux shell模式下,登录mysql控制台

命令: mysql -u root -p ,输入密码登录

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.39.1' IDENTIFIED BY 'yourpasswd' WITH GRANT OPTION

我们为当前主机在NAT模式的ip添加权限,而不是本机的实际IP

Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

mysql> select host, user from user;
+---------------------+------+
| host                | user |
+---------------------+------+
| %                   | root |
| 127.0.0.1           | root |
| 192.168.39.1        | root |
+---------------------+------+
6 rows in set (0.00 sec)

这样在ip为192.168.39.1的ip地址就可以通过root用户加密码登录了。

总结:

其实我们看到问题,应该知道是没有权限的原因,但是因为中间绕了一个NAT的网络地址,所以就容易搞乱,在此记录

  • 3
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

罗四强

打赏一下,飞升上仙。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值