无法连接Amazon RDS for PostgreSQL实例,求问题排查指导
排查Amazon RDS for PostgreSQL连接失败的常见原因
- 安全组入站规则未放行5432端口:即使实例设置为公开访问,安全组默认会拒绝所有入站流量。检查RDS实例关联的安全组,添加入站规则:协议选TCP,端口范围填5432,源设为
0.0.0.0/0(测试用)或你当前的公网IP(更安全)。 - VPC网络ACL限制:如果实例在自定义VPC中,网络ACL的入站和出站规则都要放行5432端口。ACL是无状态的,出站需允许TCP 1024-65533端口(客户端随机端口的响应流量)。
- 实例状态异常:确认RDS实例控制台显示的状态是「可用」,创建中、备份中或维护中的实例无法接受连接。
- 端点/端口输入错误:必须使用RDS控制台提供的完整端点地址(不是实例名称),端口默认是5432,若自定义配置时修改过端口,需对应填入正确值。
- 密码验证失败:重置实例密码后重试——有时候重建实例时密码输入有误,或复制粘贴时带了多余空格。
- 子网类型不匹配:实例设置为公开访问后,必须部署在公有子网(关联了互联网网关的子网)。若在私有子网,即使开了公共访问也无法直接连接。
- 本地网络限制:用
telnet <rds-endpoint> 5432或nc -zv <rds-endpoint> 5432测试连通性。如果连接超时,说明本地防火墙、代理或ISP屏蔽了5432端口,需调整本地网络设置。 - 参数组配置问题:检查关联的参数组,确认
listen_addresses设置为*(RDS默认配置通常已开启,但自定义参数组可能被修改),该参数控制PostgreSQL接受哪些IP的连接。
内容的提问来源于stack exchange,提问作者Olivier Coq
相关产品推荐
相关产品推荐

