数据传输DTS这个问题怎么解决? -[阿里云_云淘科技]

数据传输DTS这个问题怎么解决?
【UID】:286878790448336582
【实例ID】:dtsx0vs1us6p5g76d9
【Job ID】:nd6r1tebf50368y
【任务名称】:jl0m1h6ms5ka1kc#rm-bp1m999n901fxk8g1
【所有报错信息】:
CODE:DTS-RETRY-ERR-0042
错误概述:连接数据库遇到问题。
解决方案:请检查数据库是否可以正常连接。
帮助文档:https://help.aliyun.com/document_detail/462133.html#DTS-RETRY-ERR-0042
详细报错信息:将数据写入目标库异常,正在重试,重试了310次,重试了3090s,异常重试原因:
database-framework: DTS-61001: disperse error for column:meter_reading_log_id BIGINT not nullable primary unique as meter_reading_log_id of table:new_zkis_drds.meter_reading_log, value=489523393, valueType=IntegerNumeric, disperser=com.alibaba.amp.any.mysql.disperse.impl.IntegerValue2MySQLNumericDisperser@4886b474, source schema=new_zkis_drds_8rfj_0006.meter_reading_log_104{isWidthTable:false,tableEngine:InnoDB}
cause:
SQLException: No operations allowed after statement closed.
【URL】:https://dtsnew.console.aliyun.com/migrate/detail/manager/jl0m1h6ms5ka1kc?serial=30
【当前时间】:2024-01-05 21:06:20
【Region】:cn-hangzhou

以下为热心网友提供的参考意见

根据您提供的错误信息,问题出在数据传输DTS中将数据写入目标库时遇到了异常。具体错误是”SQLException: No operations allowed after statement closed.”,这意味着在执行某个操作后,数据库连接已经关闭,不能再进行其他操作。

要解决这个问题,您可以尝试以下方法:

  1. 检查源数据库和目标数据库的连接配置是否正确。确保源数据库可以正常连接,并且目标数据库的用户名、密码和权限设置正确。

  2. 检查源数据库和目标数据库的数据表结构是否一致。如果不一致,需要先调整数据表结构,使其与目标数据库一致。

  3. 检查源数据库和目标数据库的数据是否存在重复。如果存在重复数据,可以考虑删除或更新重复数据,以避免在迁移过程中出现问题。

  4. 如果以上方法都无法解决问题,可以尝试联系阿里云技术支持寻求帮助。他们可以为您提供更详细的解决方案和指导。

以下为热心网友提供的参考意见

您好,是因为目标库性能原因导致批量写入数据量过大时目标库连接断开,后端调整参数后,同时建议您检查目标库性能和负载情况,看是否有异常的指标,如有异常建议及时处理。此回答整理自钉群“DTS客户交流群-2”

以下为热心网友提供的参考意见

针对您提供的阿里云数据传输服务DTS在迁移过程中遇到的问题,错误信息显示在将数据写入目标库AnalyticDB MySQL版时出现异常,并且多次重试后仍无法成功。具体错误是由于主键列meter_reading_log_id的数据分发(disperse)出现问题,且在尝试插入或更新数据时数据库连接已经关闭。

解决步骤可以按照以下进行:

  1. 检查源数据

    • 确认源表new_zkis_drds.meter_reading_logmeter_reading_log_id列是否存在冲突数据,即是否有重复的、不为空且作为主键和唯一索引的值(如489523393)。
    • 检查该列的数据类型与目标库AnalyticDB MySQL版中对应列的数据类型是否一致且兼容。
  2. 检查目标库状态

    • 确保目标库AnalyticDB MySQL版实例处于正常运行状态,且网络连接无阻塞。
    • 检查目标表结构,特别是meter_reading_log_id列的定义,确保其与源表保持一致,包括是否为NOT NULL约束以及UNIQUE约束。
  3. 数据库连接问题

    • 根据错误信息“SQLException: No operations allowed after statement closed”,说明在执行SQL操作时,数据库连接可能已经被关闭。这可能是由于长时间未响应或者连接超时导致的。
    • 检查并优化DTS任务的配置,比如增大超时时间,确保网络延迟不会影响到连接稳定性。
    • 若有必要,重启目标库服务或者重新创建同步任务。
  4. 联系技术支持

    • 如果上述排查仍然无法解决问题,请及时联系阿里云官方技术支持,提供完整的错误日志和任务详情,以便他们进一步分析并给出解决方案。

同时,您可以参考帮助文档中的链接:https://help.aliyun.com/document_detail/462133.html#DTS-RETRY-ERR-0042 ,按照官方指导对问题进行诊断和修复。

本文来自投稿,不代表新手站长_郑州云淘科技有限公司立场,如若转载,请注明出处:http://www.cnzhanzhang.com/21225.html

(0)
匿名
上一篇 2024年1月10日 下午4:24
下一篇 2024年1月10日 下午4:24

相关推荐

新手站长从“心”出发,感谢16年您始终不离不弃。