产品简介

    • 与 TiDB 同样保持 MySQL 兼容性。高度兼容 MySQL 5.7 协议、MySQL 5.7 常用的功能及语法。
    • 支持 DML & DDL 事件同步。支持解析和同步 binlog 中的 DML 和 DDL 事件。
    • 内置多种过滤器以灵活适应不同场景。支持以预定义事件类型、正则表达式、SQL 表达式等多种方式在数据同步过程中对 MySQL binlog 事件进行过滤。
    • 集中管理。DM 支持上千个节点的集群规模,可同时运行并集中管理大量数据迁移同步任务。
    • 对第三方 Online Schema Change 工具变更过程的同步优化。在 MySQL 生态中,gh-ost 与 pt-osc 等工具被广泛使用,DM 对其变更过程进行了特殊的优化,以避免对不必要的中间数据进行迁移。详细信息可参考 。
    • 高可用。支持迁移任务在不同节点自由调度,少量工作节点宕机并不会影响进行中的任务。

    快速安装

    在使用 DM 工具之前,需了解以下限制:

    • 数据库版本要求

      • MySQL 版本 5.5 ~ 5.7
      • MySQL 版本 = 8.0 (实验特性)
      • MariaDB 版本 >= 10.1.2 (实验特性)

    • DDL 语法兼容性限制

      • DM 遇到不兼容的 DDL 语句时会报错。要解决此报错,需要使用 dmctl 手动处理,要么跳过该 DDL 语句,要么用指定的 DDL 语句来替换它。详见如何处理不兼容的 DDL 语句

    • GBK 字符集兼容性限制

      • DM 在 v5.4.0 之前不支持将 的表迁移到 TiDB。

    Contributing

    您可以通过在线文档了解和使用 DM ,如果您遇到无法解决的问题,可以选择以下途径之一联系我们。

    License

    DM 遵循 Apache 2.0 协议,在 LICENSE 了解更多信息。

    在 v5.4 之前,DM 工具的文档独立于 TiDB 文档。要访问这些早期版本的 DM 文档,请点击以下链接:

    注意:

    • DM 的 GitHub 代码仓库已于 2021 年 10 月迁移至 。如有任何关于 DM 的问题,请在 pingcap/tiflow 仓库提交,以获得后续支持。