一、注意事项
·为便于区分会话信息以及提升数据安全性,建议单独创建一个数据库账号以供数据迁移使用。
·由于割接需要暂停源库的数据写入,建议你选择一个业务低峰期进行业务割接。
二、操作步骤
1. 登录 DTS 控制台,根据有无增量迁移,选择如下步骤:
·有增量迁移:请执行 步骤 2。
·无增量迁移:请执行 步骤 6。
2. 等待数据迁移任务的迁移步骤显示为同步增量,并且目标与源库数据差距为0KB,目标与源库时间延迟为0秒。
3. 暂停源库业务,停止新的数据写入。
4. 根据源数据库的不同类型,选择如下对应代码查看是否有新的会话信息。如果1分钟 – 5分钟内显示结果除 DTS 迁移实例的连接外,无任何新的会话执行,即可认为业务已经完全停止。
·MySQL
show processlist
·SQL Server
select * from sys.dm_exec_connections;
·PostgreSQL
select * from pg_stat_activity;
·MongoDB
use admindb.runCommand({currentOp: 1, $all:[{"active" : true}]})
·Redis
client list
注意:说明:
注意:当存量连接过多时,执行此命令可能导致数据库卡顿,请谨慎操作。
5. 结束增量迁移任务。
再次查看迁移任务,等待目标与源库数据差距为0KB,目标与源库时间延迟为0秒,并保持1分钟以上,单击完成,结束增量迁移任务。
6. 验证源库和目标库的数据一致后,确定割接时机,将业务系统指向目标数据库,恢复业务使用。