使用sqoop将Hive中的数据导出到mysql及异常Job failed as tasks failed.
1. 使用以下语句尝试从Hive中导出数据到mysql
/sqoop export --connect jdbc:mysql://***.***.***.***./companyinfo --username root --password password -m 1 --table testsqoop --export-dir /user/hive/warehouse/testsqoop --columns="id,name"
出现以下错误Job failed as tasks failed.
2. 原因分析:
sqoop导出是根据分隔符去分隔字段值。hive默认的分隔符是‘\001’,sqoop默认的分隔符是','。
3. 解决:在脚本中需要加入 --input-fields-terminated-by '\001' 参数。
/sqoop export --connect jdbc:mysql://***.***.***.***./companyinfo --username root --password password -m 1 --table testsqoop --export-dir /user/hive/warehouse/testsqoop --columns="id,name" --input-fields-terminated-by '\001'
再执行,导入成功,亲测有效。