TiDB开源兼容MySQL、MariaDB的数据迁移工具

DM是一个集成平台,支持将数据从MySQL/MariaDB迁移到TiDB。

TiDB开源兼容MySQL、MariaDB的数据迁移工具

DM全称为Data Migration,是一体化数据同步任务管理平台,支持全量备份和MariaDB/MySQL binlog增量同步,设计的主要目的是:

  • 标准化(例如:工具运行、错误定义)
  • 降低运维使用成本
  • 简化错误处理流程
  • 提升产品使用体验

组件功能

DM-master

  • 保存DM集群的拓扑信息
  • 监控DM-worker进程的运行
  • 监控数据同步任务的运行状态
  • 提供数据同步任务管理的统一入口
  • 协调sharding场景下各个实例的分表DDL同步

DM-worker

  • 支持binlog本地持久化
  • 保存数据同步子任务的配置信息
  • 编排数据同步子任务的运行
  • 监控数据同步子任务的运行状态

dmctl

  • 创建/更新/删除数据同步任务
  • 查看数据同步任务状态
  • 处理数据同步任务错误
  • 校验数据同步任务配置的正确性

同步功能介绍

schema/table路由

可以把上游MySQL/MariaDB实例的某些表同步到下游指定表的路由功能,可以用来分库分表的合并同步。

schema/table同步黑白名单

上游数据库实例表的黑白名过滤名单规则。过滤规则类似于MySQL replication-rules-db/tables, 可以用来过滤或者只同步某些database或者某些table的所有操作。详

binlog Event过滤

比schema/table同步黑白名单更加细粒度的过滤规则,可以指定只同步或者过滤掉某些schema/table的指定类型binlog,比如INSERT,TRUNCATE TABLE。

列值转换

根据用户指定的内置表达式对表的列进行转换,可以用来解决分库分表自增主键ID的冲突。

分库分表支持

DM支持对原分库分表进行合库合表操作,但需要满足一些限制。

相关推荐