dm配置文件中通配符使用解惑

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。

  • 【TiDB 版本】:V3.0.3
  • 【问题描述】:dm版本为V1.0.3

测试环境中分表数是两位数,dm配置文件中,routes模块使用两个"?", 最终dump、load、syncer都能正常运行

schema-pattern: "pd_order_gxfa_*"
table-pattern: "tidb_test_w8yg_??"
target-schema: "pd_order"
target-table: "tidb_test"

生产环境中分表数是三位数,dm配置文件中,routes模块使用三个"?", dm任务没有报错,但在dump数据时mt_order_开头的分表数据却没有进行导出,其他的表正常导出。

schema-pattern: "pd_order_ujzi_*"
table-pattern: "mt_order_???"
target-schema: "pd_order"
target-table: "mt_order"

问题1: 造成这种情况的原因是什么呢? 该如何排查呢

问题2: route-rules阶段和 black-white-list阶段,都支持通配符和正则表达式吗,支持的规则相同吗?

谢谢

该表没有正常 dump 可以检查下黑白名单中是否有配置该表,另外可以从日志中检查下 dump 的表,确认是否不存在 mt_order_ 开头的表。

问题2.schema-pattern 目前只支持通配符,可参考官网链接:https://pingcap.com/docs-cn/stable/reference/tools/data-migration/table-selector/

black-white-list 是支持正则表达式的。

好的 多谢

:+1:好的