数据库
首页 > 数据库> > MySQL数据迁移工具的设计与实现

MySQL数据迁移工具的设计与实现

作者:互联网

MySQL作为最流行的关系型数据库产品之一,当数据规模增大遭遇性能瓶颈时,最容易想到的解决方案就是分库分表。无论是进行水平拆分还是垂直拆分,第一步必然需要数据迁移与同步。由此可以衍生出一系列数据迁移过程中的需求:

1.原本一张表迁移到单库多表(或多库多表),这是最基本的需求;

2.原本单库多表(或多库多表)迁移到新的多库多表(因表设计不合理、数据规模增大等原因导致需要再次分库分表)

3.新表与旧表的表结构可能不一致,如:类型表更(自增主键id由int改为bigint)、字段数量不一致(删减、增加)、字段名称变更等

4.字段映射,如:旧表中的多个字段映射为新表的一个字段,或旧表中的一个字段映射为新表的多个字段

5.增量数据的实时同步,以及当涉及表结构转换时增量部分(binlog)如何方便地实现同样的转换

6.如何支持垂直拆分的数据迁移

7.MySQL到NewSQL的迁移(如:TiDB、CockroachDB)

8.异构数据源的实时迁移,如:MySQL到HBase、MongoDB(关于异构数据源的实时同步设计不在本文内容范围,后续将专题介绍)

9.迁移前后的数据一致性校验

为满足以上需求,下面将从全量迁移和增量同步两部分来说明MySQL数据迁移同步工具的设计与实现。

标签:同步,多表,MySQL,新表,迁移,数据,工具
来源: https://www.cnblogs.com/SyncNavigator8-4-1/p/11021096.html