问题分析
业务需要使用Datax 将MySQL的数据同步到私有云的Doris,本来也是第一次接触Datax 和Doris,现在将整个过程中的问题梳理一下,方便下次快速解决问题。
一般报错会有一个在线文档描述本次报错的原因,如下
打开报错文件 Reason: actual column number in csv file is  more than  schema column number.actual number: 5223041, schema column number: 21; line delimiter: [], column separator: [SOH] 具体错误如下图片

从图片的报错原因来看数据格式行分隔符不对,导致数据只有一行,导入失败。
查看Datax中的配置 
1  | {"column_separator": "\x01","row_delimiter": "\x02"}  | 
查询分隔符意义
1  | Linux上的文件以 \001 作为分隔符时,下载后用notePad++打开时看到的SOH,以 \002 作为分隔符时,下载后用notePad++打开时看到的STX,以 \003 作为分隔符时,下载后用notePad++打开时看到的ETX;"\001" “\002” "\003"分隔是程序代码中进行解析需要的。  | 
根据报错信息中,实际行分隔符是换行符 ,不需要 STX,因此,尝试去掉Datax中的,"row_delimiter": "\x02",数据导入正常了。

