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

无法连接AWS RDS MySQL实例的调试求助

AWS RDS MySQL 连接超时调试步骤

以下是针对RDS MySQL实例连接超时(Python代码、MySQL Workbench均无法连接)的逐步排查方案:

  • 确认RDS实例公开访问配置
    进入AWS RDS控制台,找到目标实例,查看「连接性」标签下的「公开可访问」选项,必须设置为「是」。若已设置但未生效,可尝试重启实例(注意评估业务影响)。

  • 验证安全组绑定与规则

    1. 确认RDS实例绑定的安全组确实是你配置的default_组(在RDS实例「连接性」标签下查看关联VPC安全组)。
    2. 检查该安全组的入站规则:必须明确针对MySQL默认端口3306(或你自定义的端口)允许0.0.0.0/0访问,避免仅设置泛化的「所有流量」规则导致的端口匹配问题。
    3. 确认安全组出站规则允许到任意地址的3306端口流量(默认规则通常全通,但需核实)。
  • 检查VPC网络配置

    1. 若RDS实例部署在私有子网,需确保子网关联了互联网网关(IGW),且子网对应的路由表包含0.0.0.0/0指向IGW的路由条目。
    2. 优先确认RDS实例所在子网为公有子网(即路由表存在IGW路由)。
  • 测试本地网络连通性
    在本地终端执行以下命令测试端口可达性:

    telnet database-2.cgsvu7bg7jl5.us-east-2.rds.amazonaws.com 3306
    # 或使用nc命令
    nc -zv database-2.cgsvu7bg7jl5.us-east-2.rds.amazonaws.com 3306
    

    若命令无响应,说明本地网络(防火墙、VPN、运营商限制)或AWS端网络存在阻断,可暂时关闭本地防火墙/VPN重试。

  • 核查RDS实例状态与权限参数

    1. 确认RDS实例状态为「可用」,排除创建中、维护中等不可用状态。
    2. 查看实例关联的参数组,确认bind_address参数设置为0.0.0.0(默认配置,若被修改会导致无法远程连接)。
    3. 通过RDS控制台的「查询编辑器」登录实例,执行以下SQL确认用户权限:
      SELECT user, host FROM mysql.user WHERE user='admin';
      
      确保host字段为%(允许任意地址连接),而非特定IP。
  • 校验代码连接参数

    1. 确认代码中host字段完全匹配RDS控制台提供的端点地址,避免手动输入拼写错误。
    2. 若RDS实例使用了非默认端口,需在pymysql.connect中添加port=<自定义端口>参数。
    3. 可尝试暂时移除database参数,先建立基础连接,再通过connection.select_db('test')指定数据库,排除数据库不存在导致的隐性问题。

内容的提问来源于stack exchange,提问作者Micah Blackburn

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.07 02:16:20