【TiDB 版本】:
3.0.9
3.0.5
【问题描述】:
从SQL_Server 2016 数据库中有 48G的数据,要通过Kettle将一类数据转到 TiDB中。
第一次试验:
将48G数据转入到 3.0.9时,数据转入成功,耗时 17小时
第二次试验:
将48G数据转入到 3.0.5时,数据转入失败,耗时 14小时
2020/03/11 02:18:35 - TiDB-生产库-03.0 - Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Communications link failure during rollback(). Transaction resolution unknown.
PD 截图
TiDB
TiKV
System Info
tidb-02-18.log (226.3 KB)
小王同学
2
看tidb的日志报错信息,都是errorVerbose="[schema:1049]Unknown database ‘leodb3’,辛苦你这边检查下下游是否存在这些库,另外从 sql-server 迁移已经是有完整案例可参考,建议参考 https://pingcap-incubator.github.io/tidb-in-action/session4/chapter5/from-sqlserver-to-tidb.html
首先感谢老师的回答
1 . 这个错误我可以很确定,是别人操作的,和我的kettle无关
- 文章我去看过了,主要是针对SQL_Server 的全量同步、增量同步的数据迁移, 而我做的数据迁移是需要对一部分数据进行转换,有些数据还需要列表查询,并且字段名称都不相同, 所以文章中介绍的两种方式,初步看来是不能够满足我的要求
小王同学
4
您好,首先在你提供的时间前后,查看了一下,并没有明显的报错,除此之外都是上述一些 unknown database 的报错,kettle 我这边不是很熟悉,Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Communications link failure during rollback(). Transaction resolution unknown. 请排查下网络情况吧。
老师,我后来又做了个测试, 把数据库从 3.0.5
升级到 3.0.9
, 然后又做了一次同样的导入测试,结果就成功了
建议找上面的同学分析先分析一下网络链路是否存在问题;另外如果有其他的问题,麻烦重新创建新的 issue。