跳到主要内容

周期性全量复制

NineData 数据复制功能支持两个数据源之间的周期性全量复制,根据预先配置的周期自动将源端的数据全量复制到目标端。

背景信息

为了有效保护企业的核心数据,企业通常需要采取有效的备份和同步方案,将核心业务库的数据完整地复制到目标系统中。由于业务库一直在不断更新,企业需要基于设置的周期,让复制任务定期循环执行,例如每天、每小时甚至每十分钟一次,使目标系统中的数据保持最新。

前提条件

  • 已将参与周期性全量复制的数据源添加至 NineData。如何添加,请参见添加数据源
  • 目标复制链路支持全量复制。复制链路的支持列表,请参见数据复制

操作步骤

本文以 MySQL 到 MySQL 的复制链路为例,介绍周期性全量复制的配置方法。

  1. 登录 NineData 控制台

  2. 在左侧导航栏单击 >

  3. 页面,单击

  4. 页签,按照下表进行配置,并单击

    参数
    说明
    输入数据同步任务的名称,为了方便后续查找和管理,请尽量使用有意义的名称。最多支持 64 个字符。
    同步对象所在的数据源。
    接收同步对象的数据源。
    选择
    勾选,然后单击右侧的滑块开关,开启周期性全量复制。
    注意:由于周期性全量复制无法与同时运行,因此请勿勾选
    周期性全量复制的执行频率,支持,请根据实际业务需求选择。
    选择周期性全量复制的开始时间点,您可以根据您的业务所在地域按需选择时区。
    选择每次全量复制开始前,目标数据源中的数据处理策略。
    • (选中时可选):删除(DROP TABLE)目标数据源中的目标表对象,然后基于源表的表结构重建并写入数据。
    • (未选中时可选):清空(TRUNCATE TABLE)目标数据源中目标表的所有数据,然后基于源表的数据重新写入。
    • :基于源表数据直接覆盖(REPLACE)目标表的数据。
  5. 页签,配置下列参数,然后单击

    参数
    说明
    选择需要复制的内容,您可以选择复制源库所有内容,也可以选择,在列表中选中需要复制的内容,单击>添加到右侧列表。
    (可选)单击增加一条黑名单记录,选择需要加入黑名单的库或对象,这些内容都不会被复制。用于在的全库复制或复制中排除某些库或对象。
    • 左侧下拉框:选择需要加入黑名单的库名。
    • 右侧下拉框:选择对应库中的对象,您可以单击多个对象进行多选,留空则将整个数据库加入黑名单。
    如果要将多个库加入黑名单,您可以单击下方的添加按钮增加一行。
  6. 页签,根据所选的复制类型选择不同操作。

    • 包含:配置目标表同步到目标数据源之后的表名,单击

      提示

      您可以单击页面右侧的,自定义列名同步到目标数据源之后的名称。除此之外,您还可以设置,仅符合过滤条件的数据会同步到目标数据源。以测试数据 employees 表为例,将过滤条件设置为 emp_no>=10005,则 emp_no 列中小于 10005 的数据均不会同步到目标数据源。

    • 不包含:系统默认选择目标数据源中的同名数据库,如果不存在,则需要手动选择目标库。目标库中的表名、列名需要和同步对象一致。如果不一致,您也可以手动进行表名和列名的映射。

  7. 页签,等待系统完成预检查,预检查通过后,单击

    提示
    • 您可以勾选。在同步任务完成后,自动开启基于源数据源的数据一致性对比,保证两端数据一致。根据您选择的的启动时机如下:
      • :结构复制完成后启动。
      • +:全量复制完成后启动。
    • 如果预检查未通过,需要单击目标检查项右侧列的,排查失败的原因,手动修复后单击重新执行预检查,直到通过。
    • 的检查项,可视具体情况修复或忽略。
  8. 页面,提示,同步任务开始运行。此时您可以进行如下操作:

    • 单击查看同步任务各个阶段的执行情况。
    • 单击可以返回任务列表页面。