1130主机’amazon-ec2-ip’不允许连接到此MySQL服务器

前端之家收集整理的这篇文章主要介绍了1130主机’amazon-ec2-ip’不允许连接到此MySQL服务器前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我在从另一台EC2服务器访问我的某个Amazon EC2服务器上的mysql数据库时遇到问题.我阅读了有关为从外部IP地址访问的MysqL提供适当权限的各种文章,以下是我遵循的步骤:

>在我的主机EC2实例上打开端口3306以允许外部MysqL连接.
>在文件/etc/MysqL/my.cnf中,将“bind-address”从“127.0.0.1”更改为“0.0.0.0”.
>使用root打开MysqL,并执行以下命令:
授予所有特权. to worker @’ec2-ip-address’通过’密码’识别;

根据我阅读的所有博客/文章,这应该已经解决了问题,但我不断收到以下错误

1130  Host 'amazon-ec2-ip' is not allowed to connect to this MysqL server

我为EC2实例提供的IP地址是在创建实例时生成的弹性IP.为了验证问题是否特定于EC2,我尝试对不同的“静态IP地址”执行命令“3”.现在,这对我有用(即我能够从该远程服务器登录MysqL主机),因此可以肯定上述步骤是正确的.

为什么Amazon EC2 IP地址不起作用?

最佳答案
发布此问题后,在我工作时,我意识到我甚至无法ping到EC2服务器或telnet到它.所以基本的东西必须是错的.最后一位朋友帮我解决了这个问题.正如我所料,这个问题对EC2非常具体.

详情如下所示:

当我们创建EC2实例时,我们得到一个外部IP地址,类似于:ec2-XX-XXX-XXX-XX.ap-southeast-1.compute.amazonaws.com

MysqL中设置权限时,我授予上述IP地址的权限,即:

GRANT ALL PRIVILEGES on . to worker@'ec2-XX-XXX-XXX-XX.ap-southeast1.compute.amazonaws.com' IDENTIFIED BY 'password';

当您尝试从另一个本地EC2实例与EC2实例进行通信时,这不起作用.为此,您需要提供EC2实例的“内部IP地址”,可以使用ip命令找到:

ip a:

1: lo: 

为了使事情正常工作,您需要授予ip地址 – “XX.XXX.XX.XXX/23”的权限,它应该可以正常工作.类似地,在连接到“MysqL数据库时,提供给MysqL命令的主机名也应该是主机EC2实例的“内部IP地址”.

原文链接:https://www.f2er.com/mysql/433085.html

猜你在找的MySQL相关文章