DM Portal 简介

    针对这个问题,DM 提供了一个精简的网页程序 DM Portal,能够帮助用户以可视化的方式去配置需要的同步任务,并且生成可以直接让 DM 直接执行的 文件。

    本节简要介绍 DM Portal 的各项功能。

    支持 DM 的三种同步模式:

    • 全量同步
    • 增量同步
    • All(全量+增量)

    实例信息配置

    支持配置库表同步路由方式,能够支持 DM 中分库分表合并的配置方式。

    binlog 过滤配置

    支持对数据库、数据表配置 binlog event 过滤。

    配置文件生成

    支持配置文件创建,能够将配置文件下载到本地并且同时会在 dm-portal 服务器的 /tmp/ 目录下自动创建。

    当前的 DM 配置可视化生成页面能够覆盖绝大部分的 DM 配置场景,但也有一定的使用限制:

    • 编辑功能不支持解析用户之前写的 task.yaml 文件,页面只能编辑由页面生成的 task.yaml 文件
    • 编辑功能不支持修改实例配置信息,如果用户需要调整实例配置,需要重新生成 文件
    • 页面的上游实例配置仅用于获取上游库表结构,DM-worker 里依旧需要配置对应的上游实例信息
    • 生成的 task.yaml 中,默认 mydumper-path 为 ./bin/mydumper,如果实际使用其他路径,需要在生成的配置文件中进行手动修改。

    本节介绍两种部署方式:Binary 部署和 DM Ansible 部署。

    Binary 部署

    DM Portal 可以在 下载,通过 ./dm-portal 的命令即可直接启动。

    • 如果在本地启动,浏览器访问 即可使用。
    • 如果在服务器上启动,需要为服务器上配置访问代理。

    DM Ansible 部署

    可以使用 DM Ansible 部署 DM Portal,具体部署方法参照使用 DM Ansible 部署 DM 集群

    本节介绍如何使用 DM Portal 各个功能。

    新建规则

    功能描述

    新建一个 task.yaml 文件。

    操作步骤

    功能描述

    用于填写任务名称,以及选择任务类型。

    前置条件

    已选择新建同步规则

    操作步骤

    1. 填写任务名称。
    2. 选择任务类型。

    实例信息配置

    功能描述

    用于配置上下游实例信息,包括 Host、Port、Username、Password。

    前置条件

    已填写任务名称和选择任务类型。

    注意事项

    如果任务类型选择增量或者 All,在配置上游实例信息时候,还需要配置 binlog-file 和 binlog-pos。

    操作步骤

    1. 填写上游实例信息。
    2. 填写下游实例信息。
    3. 点击下一步

    DM Portal InstanceConfig

    binlog 过滤配置

    功能描述

    用于配置上游的 binlog 过滤,可以选择需要过滤的 DDL/DML,并且在数据库上配置的 filter 后会自动给其下的数据表继承。

    前置条件

    已经配置好上下游实例信息并且连接验证没问题。

    注意事项

    • binlog 过滤配置只能在上游实例处进行修改编辑,一旦数据库或者数据表被移动到下游实例后,就不可以进行修改编辑。
    • 在数据库上配置的 binlog 过滤会自动被其下的数据表继承。

    操作步骤

    1. 点击需要配置的数据库或者数据表。
    2. 点击编辑按钮,选择需要过滤的 binlog 类型。

    DM Portal BinlogFilter 1

    库表路由配置

    功能描述

    前置条件

    • 已经配置好需要的 binlog 过滤规则。

    注意事项

    • 在合并库表操作的时候,不允许批量操作,只能逐一拖动。
    • 在合表库表操作的时候,只能对数据表进行拖动操作,不能对数据库进行数据库进行拖动操作。

    操作步骤

    1. 上游实例处,选择需要同步的数据库和数据表。
    2. 点击移动按钮,将需要同步的库表移动至下游实例处。
    3. 点击右键按钮,可以对库表进行改名操作。
    4. 点击完成,自动下载 task.yaml 到本地,并且在 DM Portal 服务器上的 目录下自动创建一份 task.yaml 配置文件。
    移动同步库表

    DM Portal TableRoute 1

    右键修改库表名称

    DM Portal ChangeTableName

    合并数据表操作

    DM Portal MergeTable 2

    移动数据表至其他数据库

    DM Portal MoveToDB 2

    移动数据表至新建默认数据库

    DM Portal MoveToNewDB 2

    撤销本次操作

    清空下游实例

    DM Portal Reset

    完成并下载