天天看点

如何将本地数据库迁移到数据库上?使用 DTS 迁移数据

使用数据传输服务(dts)将本地数据库迁移到 阿里云的云数据库rds,可以实现应用不停服务的情况下,平滑完成数据库的迁移工作。接下来我们将学习下如何使用dts将本地数据库迁移到rds上。

<b>背景</b>

dts 支持 sql server 数据结构迁移和全量迁移。

1.dts支持结构迁移的对象有:表、视图、表触发器、同义词、sql 存储过程、sql 函数、自定义类型、plan guid、rule、default。

2.全量迁移 dts 会将本地数据库迁移对象的数据全部迁移到目标实例。如果在迁移过程中有增量更新的话,这些增量不会被迁移到目标库。所以建议在业务无写入时,使用 dts 进行全量数据迁移。

<b>迁移限制</b>

将本地数据库迁移到 rds 上有以下限制:

1.迁移过程中,不支持 ddl 操作

2.结构迁移不支持 assemblies、库级存储过程、service broker、全文索引、全文目录、分布式 schema、分布式函数、clr 标量函数、clr 标值函数、内部表、聚合函数和系统的迁移

3.如果使用了对象名映射功能后,依赖这个对象的其他对象可能迁移失败

<b>操作步骤</b>

注:在正式迁移之前,需要先在本地数据库和rds实例中创建迁移帐号,并在rds实例中创建要迁移的数据库,并将要迁移的数据库的读写权限授权给迁移帐号。不同的迁移类型需要不同的权限,如下表所示。

如何将本地数据库迁移到数据库上?使用 DTS 迁移数据

1.在本地数据库中创建迁移账号

如何将本地数据库迁移到数据库上?使用 DTS 迁移数据

2.在本地数据库中给迁移账号授权,本地数据库中迁移账号的权限

如何将本地数据库迁移到数据库上?使用 DTS 迁移数据

3. 在 rds 管理控制台 上单击【迁移数据库】进入dts,如下图所示。

如何将本地数据库迁移到数据库上?使用 DTS 迁移数据

4.单击 【建在线迁移任务】进入 创建迁移任务 页面,如下图所示。 

如何将本地数据库迁移到数据库上?使用 DTS 迁移数据

5.输入任务名称、本地数据库信息和目标数据库信息,单击【授权白名单并进入下一步】如下图所示。

如何将本地数据库迁移到数据库上?使用 DTS 迁移数据

6.择迁移类型,并在【迁移对象 】选择要迁移的对象,单击 &gt; 将要迁移的对象放入【已选择 】,单击 【检查并启动】如图所示。

如何将本地数据库迁移到数据库上?使用 DTS 迁移数据

如果要修改迁移对象在目标数据库上的名字,可以在 已选择 列表右侧单击 编辑 ,修改已选择的对象名称。

7.系统显示预检查结果,如下图所示。

如何将本地数据库迁移到数据库上?使用 DTS 迁移数据

8.单击检测结果为失败的检测项后的 !,查看失败详细信息,根据失败详细信息完成错误排查。

9.错误排查完毕后,在 迁移任务列表 页面,选择当前迁移任务,单击【启动】如下图所示

如何将本地数据库迁移到数据库上?使用 DTS 迁移数据

10.系统预检查通过后,单击【确定】,自动进行迁移任务,如下图所示。

如何将本地数据库迁移到数据库上?使用 DTS 迁移数据

注:为了保证本地数据库安全,请在数据迁移完成后,删除本地数据库和 rds 实例中的迁移帐号。

<b>参考</b>