问答 百科手机端

【Bug解决】Navicat无法连接远程服务器的Mysql数据库

2023-06-22 19:07
1130-Host 'LAPTOP-QO05RRBS' is not allowed to connect to this MySQL server

【Bug解决】Navicat无法连接远程服务器的Mysql数据库

错误原因:

本地IP(xxx.xxx.xxx.xxx)没有访问远程数据库的权限。
于是下面开启本地IP(xxx.xxx.xxx.xxx)对远程mysql数据库的访问权限。

解决办法:

1.远程登录服务器,启动Mysql
【Bug解决】Navicat无法连接远程服务器的Mysql数据库
2.输入:

use mysql;
select user,password,host from user;

可以看到服务器host中只有localhost主机。
我们需要将本地Ipxxx.xxx.xxx.xxx也添加到这里才对。
【Bug解决】Navicat无法连接远程服务器的Mysql数据库
3.打开本地cmd输入ipconfig找到本地host
然后再去服务器的mysql添加
【Bug解决】Navicat无法连接远程服务器的Mysql数据库
注意这里有个坑,就是本地host要和服务器在同一网关:
你看,截图中无线局域网ip是本地的,后面的是服务器的,这个ip添加到服务器的mysql中连接不上(这里可以自己尝试看看,我测试是连不上的)
【Bug解决】Navicat无法连接远程服务器的Mysql数据库
因此我们添加的配置应该是本机与服务器网关一致的ip
这个截图是我本机电脑连的与服务器在同一网关的网络
【Bug解决】Navicat无法连接远程服务器的Mysql数据库
知道这个ip后我们接下来开始配置:

4.添加方法:
输入:

grant all privileges on *.* to root@"xxx.xxx.xxx.xxx" identified by "连接密码"(这里xxx.xxx.xxx.xxx是刚才在本机的ip,它用%代替也行,表示所有ip都有权限)

grant all privileges on *.* to root@"这里填刚才本机找到的ip(xxx.xxx.xxx.xxx)" identified by "连接密码"(这里xxx.xxx.xxx.xxx用%代替也行,表示所有ip都有权限)

然后再输入:

flush privileges;

这相当于是重新加载一下mysql权限,要生效的话必须要执行
【Bug解决】Navicat无法连接远程服务器的Mysql数据库

然后你可以再查询一下刚才的表:
发现它已经被添加进去了
【Bug解决】Navicat无法连接远程服务器的Mysql数据库
5.在本机用navicat连接测试一下:连接成功!
【Bug解决】Navicat无法连接远程服务器的Mysql数据库

我是做到这里就成功了,没有什么幺蛾子,如果按照我的步骤最终还是存在问题请参考这篇文章:
https://blog.csdn.net/qq_39206238/article/details/80351803

如果文章对你有帮助,不要忘了给我点个赞吼( ̄▽ ̄)~
欢迎关注我的微信公众号:松鼠技术站

热门