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

AWS DMS(SQL Server→S3)持续报错“AlwaysOn备份数据不可用”求助

AWS DMS持续复制任务因SQL Server备份保留期不足失败的解决方案

问题说明

使用AWS DMS 3.4.7从SQL Server迁移数据到S3时,全量迁移可正常完成,但持续复制任务运行数天后失败,报错如下:

Last Error AlwaysOn BACKUP-ed data is not available Task error
notification received from subtask 0, thread 0
[reptask/replicationtask.c:2883] [1020465] Error executing source
loop; Stream component failed at subtask 0, component
st_0_sqlbrewer-aw; Stream component 'st_0_sqlbrewer-aw' terminated
[reptask/replicationtask.c:2891] [1020465] Stop Reason FATAL_ERROR
Error Level FATAL

问题根源是DMS需要访问7天前的备份文件,但现有备份仅保留7天,以下是无需永久保留所有备份的解决办法:

可行方案

1. 重置CDC起始位置为当前时间

任务失败后重启时,放弃之前的CDC进度,指定从当前时间开始捕获变更:

  • 停止故障任务
  • 在任务配置中修改CDC start position为Current time
  • 重启任务

此方法的代价是丢失故障发生到重启期间的变更数据,需手动补全该时段的增量数据。

2. 优化日志备份的可达性

确保DMS能实时获取最新的日志备份,避免因备份过期无法访问:

  • 将SQL Server的日志备份直接存储到DMS可访问的位置(如S3、EC2挂载卷),而非本地存储
  • 提高日志备份频率(比如从每日改为每小时),缩小备份覆盖的时间窗口,让DMS更快获取到新备份

3. 改用事务日志传送供DMS读取

若SQL Server使用AlwaysOn,配置事务日志传送至备用服务器,让DMS连接备用服务器进行CDC捕获。此方式下DMS直接读取事务日志,不再依赖备份文件,不受备份保留期限制。

4. 升级DMS至最新稳定版本

AWS DMS后续版本(如3.5.x及以上)可能优化了对SQL Server AlwaysOn备份的依赖逻辑,升级后可能解决备份过期导致的任务崩溃问题。升级前请先在测试环境验证兼容性。

5. 切换CDC日志读取模式

检查DMS的SQL Server端点配置,尝试将Log Read Mode改为Direct(需SQL Server版本和环境支持),让DMS直接读取事务日志,而非依赖备份文件。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 19:17:28