---
title: "创建 OceanBase 数据库至 RocketMQ 的数据同步项目 | OceanBase 文档中心"
description: 创建 OceanBase 数据库至 RocketMQ 的数据同步项目 消息队列 RocketMQ 是阿里云基于 Apache RocketMQ 构建的低延迟、高并发、高可靠的分布式消息中间件。OMS 的数据同步功能可以帮助您实现 OceanBase 数据库的物理表和 RocketMQ 数据源之间的数据实时同步，扩展消…
---
切换语言

- 中文站 - 简体中文
- International - English
- 日本站 - 日本語

文档反馈![](https://mdn.alipayobjects.com/huamei_22khvb/afts/img/A*L03BS6f-o40AAAAAAAAAAAAADiGDAQ/original) 迁移服务 OMSV 3.2.2 企业版

# 创建 OceanBase 数据库至 RocketMQ 的数据同步项目

更新时间：2023-06-25 10:20:37

消息队列 RocketMQ 是阿里云基于 Apache RocketMQ 构建的低延迟、高并发、高可靠的分布式消息中间件。OMS 的数据同步功能可以帮助您实现 OceanBase 数据库的物理表和 RocketMQ 数据源之间的数据实时同步，扩展消息处理能力。

## 前提条件

在您的 RocketMQ 实例中，您需要提前创建属性为分区顺序消息的 Topic。

## 操作步骤

1. 新建同步项目。

      1. 登录 OMS 控制台。
      2. 在左侧导航栏，单击 **数据同步**。
      3. 在 **数据同步** 页面，单击右上角的 **新建同步项目** > **新建数据库到大数据同步项目**。
 2. 选择源和目标。

      1. 在 **选择源和目标** 页面，选择 **同步类型** 为 **OB → RocketMQ**。
      2. 设置 **同步链路名** **称**。

        **说明**

        同步链路名称支持中文、数字和英文字母的组合，且不得超过 64 个字符。
      3. 单击 **标签** 文本框，在下拉列表中选择目标标签。您也可以单击 **管理标签**，进行新建、修改和删除。详情请参见 [通过标签管理数据同步项目](https://www.oceanbase.com/docs/enterprise-oms-doc-cn-10000000000373406)。
      4. 设置 **源端**。

        | 参数 | 描述 |
        | --- | --- |
        | 表类型 | 包括 **单表** 和 **多表**。 |
        | 数据源 | 如果您已创建 OceanBase 数据源，请从下拉列表中进行选择。如果未创建，请单击下拉列表中的 **添加数据源**，在右侧对话框进行添加。参数详情请参见 [添加 OceanBase 数据源](https://www.oceanbase.com/docs/enterprise-oms-doc-cn-10000000000373440)。 |
        | 数据表 | 选择 **表类型** 为 **单表** 时，在 **数据表** 中输入关键字搜索源端数据表。 选择 **表类型** 为 **多表** 时，在 **数据表** 区域的左侧选中需要同步的数据表，单击 **>**，将其添加至右侧列表中。 **注意** 待同步的表名和其中的列名不能包含中文字符。 |
        | 分片列 | 在分片列下拉列表中选择目标分片列。您可以选择多个字段作为分片列，该参数为选填。 分片列用于区分可并发写入至 MySQL 数据库的数据行。如果分片列值相同，则不会出现并发写入的情况。 **注意** 仅选择表类型为单表时，会显示该参数。 请保证分片列的正确性，分片列填写错误会导致数据同步项目失败。 |
        | ETL 选项 | 同步 OceanBase 数据库的数据至 RocketMQ 支持不等号（>、<、!=）ETL 和 等号（=）ETL。 **注意** 仅选择表类型为单表时，会显示该参数。 您可以单击 **ETL 选项**。在 **ETL 选项** 对话框中，您可以输入标准的 SQL 语句中的 `WHERE` 条件来配置行过滤。 * 只有满足 `WHERE` 条件的数据才会被同步至目标数据源，以实现数据的行过滤。 * `WHERE` 条件中的且条件支持关键词 `&&` 和 `and`，或条件仅支持关键词 `or`。 |

        同步 OceanBase 数据库的多表数据至 RocketMQ 时，OMS 支持通过文本导入对象。操作如下：

             1. 在 **数据表** 区域的右侧列表中，单击 **导入对象**。
             2. 在对话框中，单击 **确定**。

               **注意**

               导入会覆盖之前的操作选择，请谨慎操作。
             3. 在 **导入迁移对象** 对话框中，输入需要迁移的对象。例如，`SCHEMA.TB1 | SCHEMA.TB2 |`。

               建议迁移对象不超过 1 万个。
             4. 单击 **检验合法性**。
             5. 通过合法性的检验后，单击 **确定**。
      5. 设置 **目标端**。

        | 参数 | 描述 |
        | --- | --- |
        | 数据源 | 如果您已创建 RocketMQ 数据源，请从下拉列表中进行选择。如果未创建，请单击下拉列表中的 **添加数据源**，在右侧对话框进行添加。参数详情请参见 [添加 RocketMQ 数据源](https://www.oceanbase.com/docs/enterprise-oms-doc-cn-10000000000373425)。 如果您需要查看 OMS 中所有已创建的数据源，请单击页面下方的 **查看数据源**。 |
        | Topic | 输入一个已存在的 Topic。如果您未创建 Topic，可以直接输入 Topic 名称，并在设置同步类型时勾选 **初始化结构**，OMS 会在目标端自动创建该 Topic。 **注意** 如果指定的 Topic 不存在，则必须勾选 **初始化结构**。 |
      6. 单击 **下一步**。
 3. 设置同步类型。

      1. 设置源端同步类型。

        | 参数 | 描述 |
        | --- | --- |
        | 同步类型和配置 | 包括 **结构同步**、**全量同步** 和 **增量同步**。 增量同步的 DML 包括 **Insert**、**Delete** 和 **Update**，默认全部勾选。 |
        | 同步起始位点 | 指定同步某个时间节点之后的数据，默认为当前系统时间。您可以选择时间节点，也可以直接输入时间戳。 该位点与当前归档日志的保留时间密切相关。如果无特殊要求，可以从当前位点开始启动。 |
      2. 设置目标端。

        输入生产者群组，并设置 **是否允许消息追踪**。

        如果允许消息追踪，则可以追踪到一条消息从生产者发送到消息队列 RocketMQ 版服务端，再到消费者消费处理，整个过程中的各个相关节点的时间、状态等数据汇聚而成的完整链路信息。该消息轨迹可以作为生产环境中排查问题强有力的数据支持。

        生产者群组用于标识一组生产者，能够向多个 Topic 中写入数据。
      3. 单击 **下一步**。
 4. 系统自动完成对数据同步项目的预检查。

   在 **预检查** 环节，OMS 会检测和目标端的连接情况。如果预检查报错，请排查并处理问题后，重新执行预检查，直至预检查成功。
 5. 单击 **启动任务**，启动该项目的增量同步等各项任务。

   如果您暂时无需启动任务，请单击 **保存**，跳转至数据同步项目的详情页面，您可以根据需要手动启动数据同步项目。如果您需要查看详情，请参见 [查看数据同步项目详情](https://www.oceanbase.com/docs/enterprise-oms-doc-cn-10000000000373403)。

 上一篇 下一篇 ![有帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*y6ocSqN8cqsAAAAAAAAAAAAAARQnAQ)![无帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*BG9IQJyLHF8AAAAAAAAAAAAAARQnAQ)![反馈](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*eTWdQKCRKHwAAAAAAAAAAAAAARQnAQ)[AI](https://www.oceanbase.com/obi) 咨询热线
