dm 分库分表同步任务,配置里已经设置为悲观模式,开发新增字段没有按分库分表分别执行,就在某个库上的表里执行了,导致分库分表的结构不一致,因为另一个分库的分表里没有数据,我就直接删除了另一个库中的分表,直接把已新增字段的表sql语句拷贝过来执行,从而开启就出现:this DM-worker doesn’t receive any shard DDL of this group。虽然现在同步正常,但是执行show-ddl-locks时,还是显示unsynced;unlock-ddl-lock时,报has not done the operation,这里有没有忽略相关操作命令,谢谢
1)同步正常?怎么确定的? 这种悲观模式的shard group,dm会停止等待所有的DDL都执行完才会继续。
2)这种情况下要确定上游所有的分表是否都执行DDL修改字段语句?目标是所有分表都需要执行;
3)this dm-worker does not receive,看看worker对应的上游mysql 实例,然后要检查下实例中对应的所有分表。
另外的你dm版本是多少?
1 个赞
dm版本是5.4.0,我直接从源表导出表结和数据覆盖目标表,这种情况操作下,源表及目标表肯定一致,但是我没有走DDL使表结构一致,从而导致我上面说的问题
加上 --force-remove 试一下
好的,下次遇到试下,谢谢
此话题已在最后回复的 1 分钟后被自动关闭。不再允许新回复。