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

无法通过SSMS连接AWS RDS MySQL 8.0实例求助

问题原因分析
  • SSMS原生仅支持SQL Server连接,无法直接对接MySQL数据库,必须依赖第三方驱动(如MySQL ODBC驱动)才能建立连接,你当前大概率未安装适配MySQL 8.0的对应驱动。
  • 端口混淆:MySQL默认监听3306端口,1433是SQL Server的默认端口,用1433连接MySQL实例完全不符合逻辑,必然失败;且SSMS中指定MySQL端口的方式错误,不是在URL后加;3306,需通过驱动配置界面单独指定端口。
  • 认证方式不兼容:MySQL 8.0默认使用caching_sha2_password认证插件,旧版本的MySQL驱动不支持该认证方式,会直接导致连接失败。
  • 关于仅能通过3306连接:AWS RDS MySQL实例默认端口就是3306,除非你在创建实例时手动指定了其他端口,否则只会在3306端口提供服务,这是MySQL的标准默认端口,属于正常现象。
解决办法
  1. 安装适配MySQL 8.0的ODBC驱动
    下载并安装MySQL ODBC 8.0 Unicode Driver(需匹配你的操作系统位数),确保驱动版本与MySQL 8.0兼容,支持caching_sha2_password认证。

  2. 通过SSMS的ODBC数据源连接MySQL RDS

    • 打开SSMS,点击「连接」→「数据库引擎」旁边的下拉箭头,选择「其他数据源」。
    • 在「连接到服务器」窗口中,选择「ODBC Driver 8.0 for MySQL」作为数据源。
    • 填写连接参数:
      • 服务器名称:填写AWS RDS MySQL实例的端点地址(无需附加端口)。
      • 端口:单独填写3306。
      • 用户名/密码:填写你创建RDS实例时设置的主用户名和密码。
      • 勾选「记住密码」(可选),点击「连接」。
  3. 验证驱动与认证方式匹配
    如果连接时仍提示认证错误,可临时修改MySQL用户的认证方式为mysql_native_password(仅作测试,不推荐长期使用):

    ALTER USER 'your_username'@'%' IDENTIFIED WITH mysql_native_password BY 'your_password';
    FLUSH PRIVILEGES;
    

    执行后再尝试连接,若成功则说明是驱动不支持caching_sha2_password,建议优先升级驱动而非修改认证方式。

  4. 确认本地机器网络权限
    虽然同一IP来源的Ubuntu能连接,但SSMS所在的本地机器需确保防火墙未拦截3306端口的出站请求(若为同一机器则可忽略此步)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.14 23:47:15