我们正试图慢慢地将一个网站迁移到AWS等等。 我们决定首先移动的是数据库。 我们有一个专门的服务器与不同的托pipe服务提供商 我们只有一个IP。 我有麻烦授权的IP,以便旧的服务器可以连接到RDS。 它只是挂了一会儿,而使用mysql cli,然后回应:
错误2003(HY000):无法连接到“db.address.us-east-1.rds.amazonaws.com”(110)上的MySQL服务器
它虽然在我的笔记本电脑上工作。 我不太清楚什么是错的。 我有一种感觉,我不太了解CIDR / IP。 我简单地把IP地址加在/ 32上。 然后,我收集了一些信息,它也必须做子网掩码? ifconfig报告:255.255.255.0
我find了一个计算器,IP变了一下,最后还是24。 这仍然没有工作。
另一个说明…也许我不太了解操作系统之间的差异。 主机提供商使用centOS,而我们的开发机器都是Ubuntu的。
任何见解都会非常有帮助! 谢谢 :)
如果您的笔记本电脑能够正常工作,显然您已经授权您的笔记本电脑在Internet上显示的IP连接到RDS。 浏览whatismyip.com查看公共IP。 如果您从专用服务器浏览到whatismyip,则可以validation该服务器的公有IP,并确保其在AWS中已获得授权。 如果只有一个IP,请inputxxxx / 32。
如果您使用TCP端口3306 for MySQL,从专用服务器上的shell / cmd提示符处input
telnet db.address.us-east-1.rds.amazonaws.com 3306
如果连接超时,而不是打开一个新窗口,并且确认您的专用服务器的公共IP已被授权 ,那么您的服务器或托pipe服务提供商networking中的某些内容可能会阻止您的连接。 支持应该能够帮助find并修复它。
简单地将EC2 IP添加到安全组不起作用,您应该添加安全组,这在文档中有很好的解释。 它为我工作
啊显然有一些/ etc / csfconfiguration需要接受打开一个端口。 该服务必须重新启动。 我猜这可能是一些防火墙? 不确定。 如果其他人有问题连接从外部托pipe服务提供商只要求他们的帮助,他们应该能够打开端口3306。
正如我在前面关于这个主题的问题上回答的,您必须设置安全组(SG),其中AWS账户或CIDR注释地址被允许连接到RDS实例。 如果您不configuration它,默认情况下是不允许主机连接。
如果您已经在环境中configuration了防火墙规则,则可能还应该更改文件/etc/mysql/my.cnf上要讨论的参数bind-address或指定可访问该环境的ip。