---
title: "配置迁移对象的匹配规则 | OceanBase 文档中心"
description: 配置迁移对象的匹配规则 本文为您介绍迁移对象匹配规则的背景信息、使用限制、配置方式，以及场景示例和常见问题。 背景信息 在 OceanBase 迁移服务（OceanBase Migration Service，OMS）3.2.0 及以下版本中，您在创建数据迁移项目时，必须指定具体的数据迁移对象。但 OMS 支持同步 …
---
切换语言

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

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

# 配置迁移对象的匹配规则

更新时间：2026-04-14 15:35:47

本文为您介绍迁移对象匹配规则的背景信息、使用限制、配置方式，以及场景示例和常见问题。

## 背景信息

在 OceanBase 迁移服务（OceanBase Migration Service，OMS）3.2.0 及以下版本中，您在创建数据迁移项目时，必须指定具体的数据迁移对象。但 OMS 支持同步 DDL 后，如果在迁移过程中源端创建了新表，则会由于该表未在指定的数据迁移对象中，导致无法同步该表的数据。

在处理大量对象的场景下，OMS 支持通过配置匹配规则的方式进行对象的选择和映射。同时提供映射源端和目标端关系的重命名以及批量重命名功能，方便您快捷创建数据迁移项目和数据同步项目。匹配规则方式通过简单、高效的字符串匹配，可以显著提升您的工作效率。同时基于匹配规则，能够提升 OMS 处理大量对象的性能。

## 使用限制

- OMS 允许输入多条规则，但每条规则使用单行且每条规则前后不允许存在空格。
 - 迁移对象规则不允许为空，排除对象规则允许为空。
 - Schema 和数据库名称不支持通配选择。
 - 排除对象规则不支持输入 `Schema.*` 或 `DataBase.*`。
 - 如果您在创建数据迁移项目时，选择了 **同步 DDL**，则仅支持使用基于通配规则的方式选择迁移对象。
 - 迁移对象规则支持输入特定的对象名称，但该类对象不支持同步 DDL。
 - 执行修改表名称的 DDL 语句时，不允许将排除对象规则中的表重命名为排除对象规则之外的名称。
 - OMS 不支持在结构迁移、全量迁移期间进行 DDL 变更。
 - 通过匹配规则的方式选择迁移对象时，OMS 不支持表名包含特殊字符（包括换行、空格，以及 .|"'`()=;/&*?[][!]）。

## 注意事项

- 通过配置匹配规则的方式选择 CTAS 语句创建的表作为迁移对象时，建议您提前设置特定的规则（例如，`a.*_2023_backup`）来避免出现数据迁移项目中断的情况。
 - 当您完成配置迁移对象规则和排除对象规则后，如果源端表名在迁移对象规则和排除对象规则的差集内，则相关对象可以被选择。

  #### 说明

  差集是指对于给定的两个集合，返回一个包含所有存在于第一个集合但不存在于第二个集合的元素的新集合。
 - 开启同步 DDL 功能后，当您使用 DDL 语句在源端创建一张新表或者修改一张表结构时，如果表名或表结构名在迁移对象规则和排除对象规则的差集内，则该 DDL 语句可以被 OMS 实时同步至目标端。
 - 库表汇聚场景下：

     - 建议您使用导入对象或匹配规则的方式映射源端和目标端的关系。
     - 建议您自行在目标端创建表结构。如果使用 OMS 创建，请在结构迁移步骤跳过部分失败对象。

## 配置匹配规则

1. 新建数据迁移项目，并配置至 **选择迁移对象** 步骤。

   详情请参见 [数据迁移](https://www.oceanbase.com/docs/enterprise-oms-doc-cn-10000000001903077) 模块相应类型的创建数据迁移项目文档。
 2. 在 **选择对象** 页面，选择迁移对象和迁移范围。

   您可以通过 **指定对象** 和 **匹配规则** 两个入口选择迁移对象，本文仅为您介绍如何配置匹配规则。

      1. 勾选 **匹配规则**。
      2. 在 **选择迁移范围** 区域，输入 **迁移对象规则** 和 **排除对象规则**（可选）。支持的匹配规则详情请参见 [通配符规则说明](https://www.oceanbase.com/docs/enterprise-oms-doc-cn-10000000001904434)。
      3. 单击 **校验**。

        如果您需要查看匹配结果，请在校验成功后单击 **预览对象** 进行查看。您填写的通配迁移对象规则和排除对象规则，会同时应用于表和视图。**匹配结果** 包括最终对象、新增对象和减少对象。

        | 对象 | 描述 |
        | --- | --- |
        | 最终对象 | 配置的匹配规则最终匹配的迁移对象。 |
        | 新增对象 | 最终匹配结果和前一次配置的匹配结果相比，新增的迁移对象。 |
        | 减少对象 | 最终匹配结果和前一次配置的匹配结果相比，减少的迁移对象。 |
 3. 根据提示完成后续的项目配置。

## 场景示例

本小节以生产环境存在四个库：jenkins_api_mysql56、jenkins_api_mysql57、jenkins_my2dh_one 和 jenkins_my2dh_one_verify 为例，为您介绍不同场景下匹配规则的配置。

### 整库同步

四个库均需要迁移至目标端，匹配规则的配置如下。

![rule-1](https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/doc/img/oms/oms-enterprise/rule-1.png)

### 排除历史表和日志表

无需同步数据库 jenkins_api_mysql56 的历史表和日志表，且历史表以 "history_" 开头，日志表以 log 结尾。匹配规则的配置如下。

![rule-2](https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/doc/img/oms/oms-enterprise/rule-2.png)

### 设置源端和目标端的映射关系

数据库 jenkins_my2dh_one_verify 需要同步至目标端为 target_test 数据库中的表 one，匹配规则的配置如下。

![rule-3-zh](https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/doc/img/oms/oms-enterprise/rule-3-zh.png)

### 多表汇聚场景

数据库 jenkins_api_mysql56 和 jenkins_api_mysql57 中存在订单表分表 order00 ~ order99，用户希望合入至目标端数据库 jenkins_api_mysql59 中的表 order。匹配规则的配置如下。

![rule-4-zh](https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/doc/img/oms/oms-enterprise/rule-4-zh.png)

## 常见问题

- 权限不足

  请注意源端用户的权限设置问题。如果您授予用户的权限不足，部分对象未被 OMS 从前端展示出来，会导致您不能正确配置匹配规则。因此您需要将未授予权限的对象加入 **排除对象规则**，以避免 OMS 因无法找到目标端对象而造成数据迁移项目中断。
 - 不支持过滤 DML

  在未开启同步 DDL 的情况下，OMS 允许使用匹配规则的方式选择对象。在增量同步的过程中，如果新建表满足匹配规则，相关的 DDL 语句会被忽略，但 OMS 会继续同步 DML 语句，这样会造成无法写入目标端对象而造成数据迁移项目中断，因此您需要在目标端新建表或者将表加入到组件的黑名单。

 上一篇 下一篇 ![有帮助](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) 咨询热线
