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

AWS DMS端点测试连接失败:本地SQL Server迁移至RDS遇网络错误

这个DMS连接错误(错误码1022506)我碰到过好几次,尤其是已经能通过本地SSMS连上RDS,但DMS死活连不上的场景。咱们先一步步拆解排查,先搞清楚到底是源端点(本地SQL Server)还是目标端点(RDS)的连接问题:

第一步:先定位出错的端点

登录AWS DMS控制台,分别测试源端点和目标端点的连接状态——看哪个端点测试失败,这能直接缩小排查范围。


如果是目标RDS端点测试失败(虽然你本地能连,但DMS不行)

这大概率是DMS复制实例的网络权限没配置对,毕竟你的本地SSMS和DMS用的是完全不同的网络路径:

  • 检查VPC与安全组配置:
    • 确保DMS复制实例所在的VPC和RDS实例的VPC是连通的——要么在同一个VPC,要么配置了VPC peering、VPN或者Direct Connect。
    • 去RDS的安全组里,把**DMS复制实例的安全组(或者它的私有IP)**加入到入站规则里,允许访问SQL Server的端口(默认1433,自定义端口的话对应修改)。别只加你本地的IP,DMS用的是复制实例的网络身份。
    • 如果RDS开了公有可访问性,但复制实例在私有子网,要确认RDS安全组允许私有子网的流量进入,或者临时把复制实例放到带公网访问的子网(生产环境不建议这么做,但可以用来验证)。
  • 核对端点配置细节:
    • 服务器地址必须用RDS提供的完整DNS端点(比如mydb-xxxx.us-east-1.rds.amazonaws.com),别用公网IP——RDS的IP可能会动态变化,DNS端点才是可靠的。
    • 端口号要和RDS实例的端口完全一致,默认是1433,如果你改了端口一定要对应上。
    • 认证账号要有足够权限:至少需要SELECT权限(用于读取数据)和VIEW DATABASE STATE权限,用主账号测试会更稳妥。
    • SSL设置:如果RDS参数组里开了force_encryption(强制SSL),那DMS端点的SSL模式要设为require,DMS通常会自动处理AWS CA证书,不用手动导入,但如果还是报错可以检查下复制实例的SSL配置。

如果是源本地SQL Server端点测试失败

这时候要解决的是DMS复制实例怎么打通到你本地数据库的网络:

  • 打通本地与AWS的网络:
    • 你得确保本地网络和AWS VPC之间有连通路径——比如配置VPN、Direct Connect,或者临时把本地SQL Server放到公网(测试用,生产环境绝对别这么做)。
    • 本地SQL Server的防火墙必须允许DMS复制实例的IP地址访问SQL Server端口(默认1433)。
    • 开启SQL Server的TCP/IP协议:打开SQL Server配置管理器,找到「SQL Server网络配置」→「MSSQLSERVER的协议」,确保TCP/IP是启用状态,并且在IP地址设置里指定了正确的端口。
    • 允许远程连接:在SSMS里右键本地实例→属性→连接,勾选「允许远程连接到此服务器」。
  • 核对源端点配置:
    • 服务器地址要用DMS能访问到的地址——比如本地数据库的公网IP、VPN连通后的私有IP,或者内网域名(如果有DNS解析的话)。
    • 端口号和本地SQL Server的端口一致。
    • 必须用SQL Server认证账号:DMS不支持Windows认证,所以得创建一个SQL Server账号,并且给它足够的权限——比如sysadmin角色,或者至少db_datareader、VIEW SERVER STATE、ALTER ANY ENDPOINT这些权限。

通用排查技巧

  • 检查DMS复制实例状态:确保它是「available」状态,没有故障或者正在重启。
  • 查看DMS日志:在复制实例的详情页里,找到「日志」选项卡,里面会有更详细的错误信息——比如是连接超时、认证失败还是端口被拒绝,这些细节能帮你快速定位问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 10:46:59