迁移思路

我们认为,在 YMatrix 中,数据迁移主要由三个阶段组成:
第一阶段,环境准备;
第二阶段,迁移执行;
第三阶段,后续任务。

1 环境准备

如果你需要的是全库迁移,那么需要做充分的准备工作,通常包含但不局限于以下步骤(根据具体场景适当调整):

  • 停止业务之前:备份旧数据、准备好目标集群的软件环境、停止业务端的所有 DDL 操作、备份迁移所需的 DDL 语句、修正并优化 DDL 语句(推荐源信息中不带索引创建语句,以提高迁移效率)以适配目标数据库等;
  • 停止业务之后:收集目标集群软硬件配置信息、对比分析源集群与目标集群架构特征,以确立合适的迁移方案。
    我们认为,这些步骤都是必要的,你需要确保旧数据的安全性,并找到最佳迁移方法,以减少停止业务带来的代价和风险。

如果你需要的是单表迁移,那么使用 mxgate 将要迁移的表数据导出到文件备份即可。

2 迁移执行

准备工作完备后,进入执行迁移操作阶段,在此阶段:

如果你需要的是全库迁移,那么我们推荐不迁移镜像节点(Mirror),而是在使用全库迁移工具 - mxshift 执行完毕后添加 Mirror,这会大大提高迁移效率。 mxshift 工具会按每张表迁移完成的时间点自动打印迁移进度,并实时检查迁移的正确性。

如果你需要的是单表迁移,那么使用单表迁移工具 - mxgate 进行迁移即可。

3 后续任务

迁移完成后,如果你执行了全库迁移,我们推荐您重新创建索引并全库执行 analyzedb 命令以更新新库的统计信息,最后恢复业务访问,观察业务运行情况,持续跟踪一段时间(具体时间据具体时序场景而定),最终完成数据迁移。

全库迁移示例请见:
从 Greenplum 6 迁移数据到 YMatrix 5
从 YMatrix 4 迁移数据到 YMatrix 5

单表迁移示例请见: 单表迁移