Navicat远程连接阿里云服务器问题:1130 Host‘xxxx is not allowed to connect to this MySQL server‘

Navicat远程连接阿里云服务器问题:1130 Host'xxxx is not allowed to connect to this MySQL server'

问题描述

昨天在宝塔界面中创建了一个数据库,尝试使用Navicat for mysql 远程连接,结果就报了这样的一个错误:1130 Host'xxxx is not allowed to connect to this MySQL server
阿里云的主机host是123.57.167.44,点了测试连接后就报错了,说是主机host183.50.205.232不允许连接,我一下子懵了。为什么host会改变了???就算是不允许连接也是12.57.167.44这个host,为什么会变成了183.50.205.232这个我不认识的host。

在这里插入图片描述
于是我请教了CSDN的大佬们,原来我是忘记打开远程登录了。想了解解决解答可以点这里问题解答超链接

解决方法

主要思路:
1.检查端口开放。
2.阿里云配置mysql允许远程连接。

1 检查端口开放

登录到阿里云服务器中,检查安全组中防火墙是不是已经开放了3306端口
在这里插入图片描述
假如使用的是宝塔Linux面板,你需要到“安全”中检查自己的3306端口是否已经放行。
在这里插入图片描述

2 阿里云配置mysql允许远程连接

默认是不能用客户端远程连接的,阿里云提供的help.docx里面做了设置说明,mysql密码默认存放在/alidata/account.log

mysql -u root -h localhost -p #首先登录:

这里会提示输入密码,假如你忘记了root 的密码,你可以去宝塔面板的“数据库 - root密码”获取
在这里插入图片描述
然后下一步就是打开内置数据库mysql

use mysql                #打开mysql数据库
#将host设置为%表示任何ip都能连接mysql,当然您也可以将host指定为某个ip

update user set host='%' where user='root' and host='localhost';

flush privileges;        #刷新权限表,使配置生效

然后我们就能远程连接我们的mysql了。

如果您想关闭远程连接,恢复mysql的默认设置(只能本地连接),您可以通过以下步骤操作:

     use mysql                #打开mysql数据库

     #将host设置为localhost表示只能本地连接mysql

     update user set host='localhost' where user='root';

     flush privileges;        #刷新权限表,使配置生效

备注:您也可以添加一个用户名为yuancheng,密码为123456,权限为%(表示任意ip都能连接)的远程连接用户。命令参考如下:

grant all on *.* to 'yuancheng'@'%' identified by '123456';

flush privileges;

总结

对于端口号的开放,我之前就已经做了,只是不知道mysql默认是不能用客户端远程连接的,只需要配置远程连接就可以解决了

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值