常见错误¶
错误1:
错误现象:
[ERROR] - Dest file "/s01/test10001ltb/testltb1.txt" is already exist
错误原因:
导出的文件已经存在了,datamigrate发现有存在的文件会报错,没有覆盖写的原因是datamigrate将有用数据覆盖了,造成不必要的损失。因此做此策略。
使用者可自行删除文件后再执行datamigrate即可。
错误2:
错误现象:
Import data to database failed, Error Info -- "无法创建MPP加载节点网络连接!"
错误原因:
Datamigrate无法与集群节点创建连接,可能是节点网络故障或者是节点防火墙没有开放数据库访问端口导致。
错误3:
错误现象:
老版本报错信息为:[ERROR] - Thread migrate file1 c:testsyn1.txt00000000000000 failed, Error Info -- "Index out of bounds exeception " ...
新版本报错信息为:[ERROR] - The data in column 5 is too large, the size limit is 292 KB ...
错误原因:
对于text类型,datamigrate的限制为300003,如果插入数据超过这个长度则会报错。
错误4:
错误现象:
[ERROR] - Import data to database failed, Error Info -- "ERROR, create AgentGang error: could not temporarily connect to one or more segments"
错误原因:
查询MPP加载节点信息出错(您可以在MPP客户端中执行select * from get_import_info() as ("NODEID" INT2, "PORT" INT4, "ADDRESS" TEXT)语句查看错误信息)。可能的原因有:节点异常掉线(宕机)或者人为的停止节点,此时为了在节点恢复后能继续加载数据datamigrate不会退出,只会进行报错提示。
错误4:
错误现象:
[ERROR] - File charset not support ,datamigrate only support: ASCII GBK GB18030 GB2312 UTF8!"
错误原因:
导入的文件的字符编码datamigrate无法处理,如果文件的编码不是ASCII GBK GB18030 GB2312 UTF8,则需要将文件转换为这些编码后重试。
错误5:
错误现象:
[ERROR] - Database job failed, Error Code "1406", Error Info -- "提取的列值被截断" ...
错误原因:
获取数据库信息的类型为text时,超过300000字节时则会报错,测试8000000字节的数据时解决方案:-u sysdba/szoscar55@localhost:2003/OSRDB?dbtext_max_len=4000000
dbtext_max_len 的大小根据字符集和实际数据大小设置