MySQL迁移到KES表结构和数据迁移失败ERROR:Failed to retrieve table column type!(2 retries)
·
问题描述
将业务库数据全量迁移过程中有一张业务表结构和数据迁移报错:ERROR:Failed to retrieve table column type!(2 retries)
源端和目标端数据库类型:MySQL8.0.28 -- > ksql(KingbaseES)V008R030C011PSI008
分析过程
kdts报告中错误信息

kdts报告中查看表结构
推测是最后一列导致
![]()
目标端sql_mode参数查看
--连接数据库
\c 业务库 业务用户
--数据库级
show sql_mode
--用户级 必须是数据源中配置的用户而不是kdts web界面对选选择属主的用户
\c select current_setting('sql_mode'); --必须加双引号
解决办法
查看kdts中配置的目标端数据源界面的用户

注意:必须是上图中数据源管理-->目标数据库中的用户,而不是下图中迁移任务中选择模式中的目标属主

更改kdts中配置的目标端数据源界面的用户sql_mode权限
注意:务必先查后改,养成好习惯
--配置前查看
\c 业务db user
select current_setting('sql_mode');
--更改目标端数据源界面的用户sql_mode权限
alter user username sql_mode=ONLY_FULL_GROUP_BY,STRICT_ALL_TABLES,ANSI_QUOTES;
--配置后查看
\c 业务db user
select current_setting('sql_mode');

更改kdts中配置的目标端迁移参数自定义标识符

再次迁移
再次迁移后成功
![]()
更多推荐
所有评论(0)