AWS DMS端点测试失败:网络超时错误排查求助
AWS DMS端点测试失败:网络超时错误(1020912/08001/101)
错误信息
Test Endpoint failed: Application-Status: 1020912, Application-Message: Failed to connect Network error has occurred, Application-Detailed-Message: RetCode: SQL_ERROR SqlState: 08001 NativeError: 101 Message: timeout expired
已完成的排查步骤
- 复制实例与端点处于同一VPC
- 网络ACL为默认配置(允许所有连接),测试时将安全组入站/出站均设为
0.0.0.0/0 - 尝试多种安全组配置:将DMS安全组添加为RDS安全组源、使用精确私有地址等,均无效
- 手动录入RDS PostgreSQL端点信息:主机、密码、端口(5432)均确认正确
额外排查建议
验证网络可达性
- 在同一VPC内的EC2实例上,用
telnet <RDS_ENDPOINT> 5432或nc -zv <RDS_ENDPOINT> 5432测试端口连通性。如果EC2也无法连接,问题不在DMS,需排查RDS本身的网络状态。 - 若EC2能连通,进一步测试DMS复制实例的出站能力:在EC2上执行
nc -s <DMS_PRIVATE_IP> -zv <RDS_ENDPOINT> 5432,确认复制实例的源IP能正常访问RDS端口。
- 在同一VPC内的EC2实例上,用
检查RDS访问配置
- 确认RDS实例的公共访问设置:如果禁用公共访问,必须使用RDS的私有端点连接,避免用公共DNS导致流量走公网路由超时。
- 查看RDS状态是否为
available,排除维护、重启等操作导致的临时不可用。
排查数据库连接限制
- 登录RDS执行
SELECT count(*) FROM pg_stat_activity;,对比实例的max_connections参数。如果连接数接近上限,会拒绝新连接,表现为超时。
- 登录RDS执行
核对DMS复制实例网络细节
- 确认复制实例的子网与RDS子网在同一VPC,且子网路由表无异常(比如错误指向NAT网关导致流量走公网)。
- 检查复制实例安全组的出站规则:即使设为
0.0.0.0/0,也要确保没有手动添加的拒绝规则优先生效。
验证SSL配置
- 如果RDS强制SSL连接,需将DMS端点的
SSL mode设为require或verify-full,并确认已选择AWS RDS对应的根证书。SSL配置不匹配会导致连接超时或失败。
- 如果RDS强制SSL连接,需将DMS端点的
检查VPC端点与路由
- 若VPC启用了RDS的VPC端点,确认路由表是否正确指向该端点,避免流量走公网导致无法到达RDS。
内容的提问来源于stack exchange,提问作者Gori
相关产品推荐
相关产品推荐

