不能skip的原因我觉得应该是你没有找对位置。看上去是tidb不支持create table 。。。start transaction这个语法,可以想象的到后面应该是一堆insert into。这些应该都要skip的。
所以你应该打开binlog,找到binlog里面这一系列insert语句的末尾。完整的跳过去。
另外,我觉得你要想清楚这种情况有必要同步这个表么?
create table as select * from table1
table1表只有少量数据,是研发在生产环境测试/随手备份某表数据之类的行为也就罢了。如果table1但凡有点数据,这个建表方式同步到下游就是一个写入热点。没有必要跟着上游折腾。如果实在后续需要同步,单独添加一个task处理新建的表就完事了。为这种情况卡住dm同步其他表一般来说都是得不偿失的。
提示里面给出的方案 ,说加个ddl filter过滤这些不需要的ddl更好。