You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无法连接AWS MySQL RDS实例求助:Azure服务器报ERROR 2003错误

解决Azure Ubuntu服务器无法连接AWS RDS MySQL实例的问题

以下是逐步排查和解决的方案:

  • 验证RDS实例基础状态
    确认RDS实例处于*可用(Available)*状态,同时检查实例的「公有可访问性」设置是否为是(Yes)——若设为否,即使安全组放行也无法通过公网连接。

  • 排查Azure服务器本地防火墙
    除NSG的出站规则外,检查Ubuntu服务器自身的ufw防火墙是否放行3306端口出站流量:

    sudo ufw status
    

    若未放行,执行命令添加规则:

    sudo ufw allow out 3306/tcp
    
  • 测试网络连通性
    在Azure服务器上用telnet或nc命令测试到RDS端点的连通性,确认网络链路是否通畅:

    telnet dbexample.something.ap-south-1.rds.amazonaws.com 3306
    # 或使用nc命令
    nc -zv dbexample.something.ap-south-1.rds.amazonaws.com 3306
    

    若连接超时,说明网络层面存在阻断,需进一步排查Azure侧的路由策略或额外防火墙限制。

  • 确认RDS安全组与用户权限

    • 检查RDS安全组的入站规则,确保协议为TCP、端口3306,且源地址包含Azure服务器的当前公网IP(若Azure服务器使用动态公网IP,需确认IP是否已更新到安全组)。
    • 验证RDS的admin用户是否允许从Azure IP连接:若能通过其他机器登录RDS,执行SQL查询:
      SELECT user, host FROM mysql.user WHERE user = 'admin';
      
      若host字段不是%或Azure服务器IP,执行授权命令:
      GRANT ALL PRIVILEGES ON *.* TO 'admin'@'你的Azure公网IP' IDENTIFIED BY '你的密码';
      FLUSH PRIVILEGES;
      
  • 排查DNS解析问题
    在Azure服务器上测试RDS端点的DNS解析是否正常:

    nslookup dbexample.something.ap-south-1.rds.amazonaws.com
    

    尝试用解析出的IP直接连接,排除DNS解析异常:

    mysql -h 解析得到的IP地址 -P 3306 -u admin -p
    
  • 检查版本兼容性
    确认Azure服务器上的MySQL客户端版本与RDS实例的MySQL版本兼容:

    mysql --version
    

内容的提问来源于stack exchange,提问作者Kawaljeet Singh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 04:32:38