【 TiDB 使用环境】生产环境 or 测试环境 or POC
【 TiDB 版本】
【遇到的问题】
【复现路径】做过哪些操作出现的问题
【问题现象及影响】
我修改了DM的同步规则,发现修改前创建的表没有同步,请问需要怎么操作才能同步过来吗?
block-allow-list: # 如果 DM 版本早于 v2.0.0-beta.2 则使用 black-white-list。
global:
do-tables: # 需要迁移的上游表的白名单。
- db-name: “db_dm” # 需要迁移的表的库名。
tbl-name: “tb*” # 需要迁移的表的名称
tbl-name: “tb*”
修改前我这里是具体同步某个表的
tbl-name: “tb_t1”
后面我创建了tb_t2表,然后修改配置想把tb开头的表都同步,但是发现没有同步t2表
我这里的情况是,修改配置后,已经存在表没有同步过来,新建的表同步正常。
过程是这样的:
步骤1.配置只同步tb_t1的配置,然后启动任务,同步正常
步骤2.新建tb_t2,这个时候是不会同步的,因为上面的规则只配置了同步tb_t1表
步骤3.修改配置,同步tb*开头的所有表,然后重启动任务,发现tb_t2表没有同步过来,但是新建的tb_t3可以同步
1 个赞
修改配置,同步tb*开头的所有表,然后重启动任务,发现tb_t2表没有同步过来,但是新建的tb_t3可以同步
这个 t2 表没有同步过来是什么意思呢?没有在下游建表,还是里面已经存在的数据没有同步过来,还是增量数据没有同步过来?
增加迁移表的步骤在楼上给的链接里。也可以尝试通过另开任务的方式把这个表单独同步到下游。
如果是测试环境建议删除task,重新创建,生产环境如果不好删除就增加一个task来同步没同步的表,前提是要确定同步规则没有问题