方案概述
应用场景
本实践主要介绍如何从Azure SQL DB同步至RDS for SQL Server实例。涵盖了从环境准备、配置优化到监控维护的全过程,确保数据复制的稳定性和可靠性。
- 在环境准备阶段,用户需确保源端和目标端的网络连通性,并完成必要的权限配置。建议对源端和目标端的系统进行兼容性测试,以避免潜在的兼容问题。
- 配置优化方面,根据数据量和业务需求选择合适的复制模式。对于大规模数据复制,推荐使用增量复制以减少对业务的影响。同时,合理设置复制任务的优先级,确保关键数据的优先复制。
- 监控维护是确保DRS稳定运行的重要环节。用户应定期检查复制任务的状态,及时处理异常情况。建议启用日志记录功能,以便于问题排查和性能分析。
方案架构
本方案旨在提供一个高效、稳定的技术架构,以满足业务需求并确保系统的可扩展性和安全性。
通过“使用SSMS提取源端Azure SQL数据层->将从源端导出的dacpac文件导入目的端->在目的端禁用所有触发器和外键->DRS开启全量+增量任务->割接期间完成恢复所有触发器及外键,并完成随机内容抽样比对”的架构设计,本方案能够有效支持业务的快速发展,同时确保系统的高性能和高可用性。
方案优势
- 可靠性高:利用原生dacpac文件迁移结构,确保数据库对象定义准确无误。DRS 提供全量+增量数据同步,并通过预检查和监控告警机制,保障数据迁移的完整性和任务成功率。
- 业务影响小:利用DRS的增量同步功能可在业务不停服的情况下,实时同步迁移过程中的数据变更,将割接时的业务中断时间缩短至分钟级。
- 易用性好:SSMS和DRS提供图形化界面操作,配置结构迁移和数据同步任务,降低了手动操作的复杂度和出错风险。
使用说明
DRS对SQL Server的同步存在限制条件,不支持同步的SQL_VARIANT、GEOMETRY、GEOGRAPHY、HIERARCHYID及自定义类型等数据类型。
详细信息可参考DRS官方文档:将Microsoft SQL Server同步到Microsoft SQL Server。
在Azure SQL Database中,变更数据捕获适用于 Standard S3 及更高版本、Premium 版本、业务关键版本和通用版本。Basic、Standard S0、Standard S1和 Standard S2不支持变更数据捕获。如果用户做增量同步任务、并且版本不满足要求,需要升级到相应的版本。可参考Azure官网变更数据捕获。