暂无图片
[FAQ] DM 同步报错 Error 8200: Unsupported multi schema change
我来答
分享
Y
yyyola
2021-05-25
[FAQ] DM 同步报错 Error 8200: Unsupported multi schema change

问题现象

DM 版本: v1.0.6
上游执行单个 DDL 语句内添加多个字段的语句,通过 DM 同步到 TiDB 的时候报错

                                "error": {
                                    "ErrCode": 10006,
                                    "ErrClass": 1,
                                    "ErrScope": 2,
                                    "ErrLevel": 3,
                                    "Message": "execute statement failed: ALTER TABLE xxxxx ADD COLUMN xxxxxx   Error 8200: Unsupported multi schema change",
                                    "RawCause": "Error 8200: Unsupported multi schema change"
                                }
                            },
复制

问题描述

DM 会尝试将包含多个 DDL 变更操作的单条语句拆分成只包含一个 DDL 操作的多条语句,但是可能没有覆盖所有的场景。
目前支持拆分的语句类型包括:drop table/rename table/alter table
https://github.com/pingcap/dm/blob/v2.0.1/pkg/parser/common.go#L173

对于以下这种形式的 alter table 语句会进行拆分

alter table table_name
add t1 xxx,
add t2 xxx,
add t3 xxx;
复制

但是在 v2.0.1 之前版本对于以下这种 alter 语句不会进行拆分,会直接发送给下游 TiDB ,目前 TiDB 不支持单个 DDL 语句修改多个字段的操作,所以会报错

alter table table_name
add column
(t1 xxx,
t2 xxx,
t3 xxx;
复制

我来答
添加附件
收藏
分享
问题补充
1条回答
默认
最新
cqiwen

tidb只顾着融资去了,官方技术文档少得可怜,遇到问题很难在网上找到解决方法。最好是直接咨询tidb官方团队。

暂无图片 评论
暂无图片 有用 0
打赏 0
回答交流
Markdown


请输入正文
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
暂无图片墨值悬赏