本文介绍SQL Server常见的几种迁移上云的方案,您可以根据数据源的位置、各方案使用的工具、各方案的优势与限制等,选择最适合您的上云方案。
准备工作
已创建规格和存储空间大于等于源库的目标RDS SQL Server实例。
在源和目标库中分别执行
SELECT name, compatibility_level FROM sys.databases;
命令,确认目标库是否兼容源库。请确保源库和目标库的安全设置(包括防火墙、白名单、安全组等)未限制迁移工具的访问。
若您需要使用到DTS迁移上云,请确保:
已添加DTS服务器的IP地址段到数据库白名单设置中,以便DTS可以正常访问。
目标库和源库在DTS支持的迁移范围中。
上云方案简介
物理备份上云
上云方案 | 实现流程 | 操作教程 |
使用OSS(手动上云) |
| |
使用数据灾备和DTS(一键上云) |
|
逻辑数据迁移
上云同步模式 | 实现流程 | 操作教程 |
使用DTS(日志解析模式) |
| |
使用DTS(混合日志解析模式) |
| |
使用DTS(轮询查询CDC实例模式) |
|
其他方案上云
上云方案 | 实现流程 | 操作教程 |
使用SSMS工具 |
|
上云方案对比
物理备份上云
上云方案 | 方案优势 | 主要限制 |
使用OSS(手动上云) |
|
|
使用数据灾备和DTS(一键上云) |
|
|
逻辑迁移上云
上云同步模式 | 方案优势 | 主要限制 |
使用DTS(日志解析模式) |
|
|
使用DTS(混合日志解析模式) |
|
|
使用DTS(轮询查询CDC实例模式) |
|
|
其他方案上云
上云方案 | 方案优势 | 主要限制 |
使用SSMS工具 | 操作过程简单稳定,数据一致性风险小。 |
|
上云方案选择
若数据源不支持增量迁移,则需要在进行上云操作之前停止源库的数据写入。
数据源 | 是否支持增量迁移 | 可选上云方案 | 推荐方案 |
自建SQL Server | 是 |
| |
Azure SQL Database | 是 |
| |
Azure SQL Managed Instance | |||
SQL Server on Azure Virtual Machines |
| ||
Amazon RDS for SQL Server | 是 |
| |
华为云RDS SQL Server | 否 |
| 说明
|
腾讯云数据库SQL Server | 是 |
| |
Google Cloud SQL for SQL Server | 是 |
|
后续操作
数据校验
SQL Server迁移上云后,通常需要校验数据是否已经全量迁移到RDS SQL Server实例,您可以根据实际情况进行校验。如下为两种常见校验方式:
根据核心数据校验
您可以按照日期或自增ID进行排序,以验证最新业务数据是否已经正确迁移。例如,核心业务表Orders中包含OrderID(自增ID)和OrderDate(日期)等字段,可以使用如下语句进行查询:
-- 源数据库实例中的SQL查询
SELECT TOP 10 OrderID, OrderDate, CustomerID, TotalAmount
FROM Orders
ORDER BY OrderDate DESC;
-- 目标数据库实例中的SQL查询
SELECT TOP 10 OrderID, OrderDate, CustomerID, TotalAmount
FROM Orders
ORDER BY OrderDate DESC;
使用DTS全量校验
DTS支持在不停服的情况下对源库和目标库进行校验。您可以使用DTS创建一个全量校验任务,以校验数据是否已经全量迁移。
更新数据库统计信息
若SQL Server迁移上云后,目标RDS SQL Server实例的性能明显下降,可能是因为RDS SQL Server实例中的数据分布发生变化。您可以对指定数据库的统计信息进行全量更新,以恢复或提升实例性能。