tencent cloud

数据传输服务

动态与公告
产品动态
公告
产品简介
产品概述
数据迁移功能描述
数据同步功能描述
数据订阅(Kafka 版)功能描述
产品优势
支持的地域
规格说明
购买指南
计费概述
变更配置说明
欠费说明
退费说明
快速入门
数据迁移操作指导
数据同步操作指导
数据订阅操作指导(Kafka 版)
准备工作
业务评估
网络准备
添加 DTS IP 地址至对接数据库白名单
DTS 服务权限准备
数据库及权限准备
配置自建 MySQL 系的 Binlog
数据迁移
数据迁移支持的数据库
云数据库跨账号实例间迁移
迁移至 MySQL 系列
迁移至 PostgreSQL
迁移至 MongoDB
迁移至 SQL Server
迁移至腾讯云分布式缓存数据库
任务管理
数据同步
数据同步支持的数据库
云数据库跨账号实例间同步
同步至 MySQL 系列
同步至 PostgreSQL
同步至 MongoDB
同步至 Kafka
任务管理
数据订阅(Kafka 版)
数据订阅支持的数据库
MySQL 系列数据订阅
TDSQL PostgreSQL 数据订阅
MongoDB 数据订阅
任务管理
消费管理
前置校验不通过处理方法
检查项汇总
割接说明
监控与告警
支持的监控指标
告警通知功能
通过控制台配置指标告警和事件告警
通过 API 配置指标告警和事件告警
运维管理
配置系统维护时间
任务状态扭转说明
实践教程
本地数据库同步上云
构建双向同步数据结构
构建多对一同步数据结构
构建多活数据中心
数据同步冲突策略如何选择
使用 CLB 代理将其他账号下的数据库迁移至本账号下
通过云联网方式迁移自建数据库至腾讯云数据库
DTS 性能调优最佳实践
常见问题
数据迁移
数据同步
数据订阅 Kafka 版常见问题
数据订阅正则表达式
错误处理
常见错误处理
连通性测试不通过
校验项结果不通过或者出现警告
云联网接入配置源数据时无法选择子网
迁移慢或者进度卡住
数据同步有延时
数据订阅延迟过高
数据消费异常
API 文档
History
Introduction
API Category
Making API Requests
(NewDTS) Data Migration APIs
Data Sync APIs
Data Consistency Check APIs
(NewDTS) Data Subscription APIs
Data Types
Error Codes
DTS API 2018-03-30
相关协议
服务等级协议

常见错误处理

PDF
聚焦模式
字号
最后更新时间: 2024-07-08 15:46:20
本章节提供了在任务运行过程中,常见的错误及处理方法,用户可按照对应指导进行错误处理。

MySQL 常见错误

如下为 MySQL 数据库在迁移、同步、订阅过程中的报错和处理方法,所列错误码为 MySQL 系统的错误码。
错误码
报错码说明
报错场景
报错示例
分析和处理方法
1227
权限问题
数据迁移、数据同步、数据订阅
Error 1227: Access denied.
问题分析
执行任务的账号没有连接源库/目标库的权限。
处理方法
给执行任务的账号进行授权。具体账号权限要求请参考操作指导中的对应文档
1040
数据库连接数太多
数据迁移、数据同步
Error 1040: Too many connections.
问题分析
数据库连接数太多。
处理方法
修改源数据库的最大连接数 max_connections 为更大值,关闭源库不使用的连接,或者稍后在业务量少时进行任务重试。
1045
操作被拒绝
数据迁移、数据同步、数据订阅
Error 1045 (28000): Access denied for user '{{xx}}'@'{{xx}}' (using password: YES)
问题分析
在任务运行中用户修改了账号权限或密码信息。
在源库或者目标库上未对 DTS 的服务 IP 进行授权。
处理方法
检查是否有修改账号或者密码操作,如果有请撤销或者改回,具体账号权限要求请参考操作指导中的对应文档
参考文档对 DTS 的服务 IP 进行授权。
1050
库表已存在,重复执行 DDL 语句
数据迁移、数据同步
Error 1050: Table {{*}} already exists, binlog position:<{{*}}>, gtid:{{*}}, related tables: {{*}}
问题分析
创建多合一迁移/同步任务,多个源库执行了相同的 DDL 操作导致在目标库 DDL 操作重复。多合一场景中,仅支持在一个同步任务中勾选 DDL 操作。
任务过程中,用户同时在目标库中也创建了该表,导致源库 DDL 操作同步到目标库中,重复执行。
网络异常或语句执行时间太长,任务重试过程中造成 DDL 重复。
处理方法
按照如上分析排查,如需跳过当前事务,请提交工单处理。
1054
相关表中包含未知列
数据迁移、数据同步
Error 1054: Unknown column {{*}} related tables: {{*}}
问题分析
在任务启动前,未选择迁移/同步该表结构,目标库中不包含对应列。
在任务运行中,用户同时操作了目标库,删除了该列。
处理方法
请在目标库上确认该列是否存在;如果不存在,请补齐该列后进行任务重试。
1062
主键冲突报错
数据同步
Error 1062: Duplicate entry '{{xx}}' for key 'PRIMARY', related tables: '{{xx}}'.
问题分析
同步场景中,如果主键冲突处理机制选择冲突报错,则 DTS 遇到目标库与源库同步的数据发生主键冲突会报错。
在任务运行过程中,手动在目标库中写入数据,导致目标库中已存在相同主键的记录。
在任务运行前,源库关闭了唯一键检查,在源库本身已经存在重复主键数据。
在任务运行过程中,未同步 Delete 操作,导致源库数据删除后未同步至目标库,造成源库插入数据时与目标库主键冲突。
处理方法
检查源库是否有重复主键,如果有请先处理。
修改或者删除目标库中对应数据表的主键,然后重试任务。
1071
索引字段长度太长
数据迁移、数据同步
Error 1071 (42000): Specified key was too long; max key length is 767 bytes.
问题分析
默认情况下,InnoDB 引擎单一字段索引的长度最大为767bytes,即:767/2<384个双字节的字段,或者767/3<256个三字节的字段。GBK 是双字节,UTF-8是三字节,utf8mb4_unicode_ci 是四字节。MySQL 5.6 及其以上版本,所有 MyISAM 表都会被自动转换为 InnoDB,所以在自建数据库上有超过767bytes的组合索引列,同样的建表语句在自建库上运行没问题,但是在 MySQL 5.6 版本以上就会有问题。
处理方法
修改文件中出错行组合索引列的长度。
示例:create table test(test varchar(255) primary key)charset=utf8;
-- 成功
create table test(test varchar(256) primary key)charset=utf8;-- 失败
1146
库表不存在
数据迁移、
数据同步
Error 1146: Table '{{xx}}' doesn't exist on query.
问题分析
任务过程中,目标库上删除了该表。
源库在数据导出阶段进行了库表结构变更的 DDL。
任务启动前,未选择迁移/同步该表结构。
处理方法
请到目标库上执行show create table xxx,确认该表是否存在;如果不存在,请在目标库上手动创建该表。
1213
源库和目标库双写引起死锁
数据迁移、数据同步
Error 1213: Deadlock found when trying to get lock; try restarting transaction, related tables: '{{xx}}'.
问题分析
DTS 在目标库的写操作与用户在目标库的写操作冲突,造成死锁。
处理方法
终止死锁进程,重建任务。
建议实例控制下更新操作的加锁逻辑,给表加索引,尽量走行锁,减少锁开销。
1236
源端 Binlog 日志问题
数据迁移、数据同步、数据订阅
Error 1236 (HY000): Cannot replicate because the master purged required binary logs. Replicate the missing transactions from elsewhere, or provision a new slave from backup……
问题分析
源库 Binlog 日志保存时间短,DTS 拉取时已经被清理,或者拉取到的 Binlog 位点不正确。
处理方法
确认源库 Binlog 的保存时间(expire_logs_days)设置符合业务需求,建议保存时间大于3天,然后重建任务。
1414
数据导出阶段源库进行了变更库表结构的 DDL
数据迁移
Error 1414: Table definition has changed, please retry transanction.
问题分析
在源库数据导出阶段,不能进行库表结构变更的 DDL 操作,否则会可能会导致报错。
处理方法
重建迁移任务。

DTS 常见错误

如下为 DTS 系统在迁移、同步、订阅过程中的常见报错及处理方法。
报错说明
报错场景
报错示例
分析和处理方法
数据库连接异常
数据迁移、数据同步、数据订阅
{{*}}invalid connection{{*}}.
driver: bad connection,{{*}}
dial tcp {{*}}: connect: connection refused.
问题分析
1. 源/目标库被隔离或下线。
2. 源/目标库长时间重启不成功。
3. 源/目标库发生主从切换长时间不成功。
4. 源/目标库负载过高。
5. 人工或者程序定期/不定期地 Kill 源/目标库上的连接。
6. 其他可能导致网络连接失败的情况,例如对源/目标库设置了网络安全策略阻止了接入请求。
处理方法 请按照上述分析逐个排查并解决。
对于腾讯云实例,可通过实例控制台以及腾讯云可观测平台协助排查和解决问题,解决成功后可在控制台重试任务进行恢复。
如果未发现问题或者解决不成功,可提交工单处理。
数据库连接异常
数据迁移、数据同步、数据订阅
dial tcp {{*}}: connect: connection refused.
问题分析
1. 源/目标库被隔离或下线。
2. 源/目标库长时间重启不成功。
3. 源/目标库发生主从切换长时间不成功。
4. 源/目标库负载过高。
5. 其他可能导致网络连接失败的情况,对源/目标库设置了网络安全策略阻止了接入请求。
处理方法 请按照上述分析逐个排查并解决。
对于腾讯云实例,可通过实例控制台以及腾讯云可观测平台协助排查和解决问题,解决成功后可在控制台重试任务进行恢复。
如果未发现问题或者解决不成功,可提交工单处理。
源数据库存在较长时间的 SQL 在运行导致加锁失败
数据迁移、数据同步
Find Resumable Error, src db has long query sql, fix it and try it later.
Find Resumable Error: Task failed due to table lock failure caused by time-consuming SQL query statements in source instance.

问题分析
如果源数据库存在较长时间的 SQL 在运行(大于5s),为保证源数据业务不受影响,DTS 需要等慢 SQL 运行结束后再加锁进行数据导出,默认加锁时间为60s,超时后加锁失败,任务报错。
处理方法
处理源库中的慢 SQL 或者等慢 SQL 运行结束后进行任务重建。
Binlog 参数格式不符合要求
数据迁移、数据同步、数据订阅
Statement binlog format unsupported:{{xx}}.
binlog must ROW format, but MIXED now.
binlog row before/after image not full, missing column {{xx}}, binlog posistion:{{xx}}, gtid:{{*}}.
问题分析
为了保证数据的正确性和完整性,DTS 会对源库 Binlog 相关参数做如下要求,在检查阶段也会对源库的 Binlog 参数进行检查,不符合要求则会报错,无法启动任务。
检查通过任务启动后,如果用户修改了源库 Binlog 参数也会导致任务报错,请确保源库 Binlog 满足如下要求。
binlog_format 需要设置为 ROW
binlog_row_image 需要设置为 FULL
处理方法
根据提示修改报错参数,详细操作指导请参考 Binlog 参数检查,然后重建任务。
注意:参数修改后需要重启线程才能生效,数据库重启后参数会恢复初始配置,所以重启后请确认参数配置正确。
内置 Kafka 异常
数据订阅
kafka: error while consuming {{*}}.
kafka: Failed to produce message to topic.
问题分析
DTS 数据订阅内置 Kafka 组件生产或消费异常,后端服务会自动重试并自愈,请刷新一下页面,关注任务的状态流转。
处理方法
如果超过10分钟后刷新,状态仍然没有流转,请提交工单处理。
任务停止超过7天,Kafka 数据过期
数据订阅
kafka server: The requested offset is outside the range of offsets maintained by the server for the given topic/partition.
问题分析
由于任务停止或者异常时间超过7天,DTS 任务中间缓存的Kafka 数据过期,导致读取 Kafka 数据失败。
解决方法
销毁任务并重建任务。对于包年包月的任务,可通过重置操作来新建任务。



帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈