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

已开启公网访问仍无法用MySQL Workbench连接AWS RDS数据库

排查AWS RDS MySQL无法通过Workbench连接的步骤

以下是针对你场景的具体排查点,按优先级尝试:

  • 确认RDS公网访问配置生效
    登录RDS控制台,找到目标实例,查看「Connectivity & security」标签下的「Publicly accessible」是否为Yes。有时候修改配置后未点击「Apply changes」会导致设置不生效。

  • 核对连接参数准确性
    确保Workbench中填写的:

    • 端点是RDS控制台显示的完整Endpoint(例如mydb.cxxxxxx.us-east-1.rds.amazonaws.com,不是实例名称)
    • 端口与RDS实例的「Port」一致(默认3306,若自定义过需对应)
    • 用户名、密码无拼写错误,注意大小写敏感
  • 测试本地网络连通性
    在本地终端执行命令测试端口连通性:

    telnet <你的RDS端点> 3306
    

    或者用nc命令:

    nc -zv <你的RDS端点> 3306
    

    如果连接超时,说明本地网络(防火墙、公司代理、家庭路由器)拦截了3306端口,需要调整本地网络规则,或者尝试切换到手机热点测试。

  • 验证RDS实例状态与账号权限

    1. 确认RDS实例状态为available,若处于backing-up、modifying等状态,需等待状态恢复后再尝试连接。
    2. 通过Elastic Beanstalk实例的SSH登录(EB控制台可生成临时密钥),在EB实例内执行mysql连接命令:
      mysql -h <RDS端点> -u <用户名> -p
      
      如果EB实例能连上,说明RDS本身没问题,问题出在数据库账号的访问权限——检查账号是否被限制为仅内网IP访问,需执行以下SQL修改权限(在EB实例的mysql会话中执行):
      GRANT ALL PRIVILEGES ON *.* TO '你的用户名'@'%' IDENTIFIED BY '你的密码';
      FLUSH PRIVILEGES;
      
      (注意%允许所有IP访问,生产环境建议替换为你的本地公网IP以提升安全性)
  • 确认RDS部署的子网类型
    检查RDS实例所在的子网是否为公有子网(子网的路由表包含指向Internet Gateway的路由)。若RDS部署在私有子网,即使开启「Publicly accessible」也无法被外部访问。

  • 排查DNS解析问题
    在本地终端执行:

    nslookup <你的RDS端点>
    

    若无法解析到公网IP,说明本地DNS存在问题,尝试将本地DNS服务器改为公共DNS(如8.8.8.8)后再测试连接。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 05:22:18