如何在使用Sqoop Imprt-all-tables命令时更改HIVE字段分隔符

时间:2016-03-29 11:37:15

标签: mysql hive sqoop

我正在尝试运行以下命令来导入mysql数据库中的所有表。

 sqoop import-all-tables \
  --num-mappers 4 \
  --connect "jdbc:mysql://<host>:<port>/SomeDB" \
  --username=SomeUser \
  --password=SomePassword \
  --hive-import \
  --hive-overwrite \
  --create-hive-table \
  --hive-database STAGING_AREA

这是创建具有以下分隔符的表

Storage Desc Params:         
    field.delim             \u0001              
    line.delim              \n                  
    serialization.format    \u0001 

如何更改字段分隔符以说明&#39; |&#39;运行上面的sqoop命令时。

2 个答案:

答案 0 :(得分:1)

我将以下内容添加到sqoop选项列表

--fields-terminated-by \

这解决了这个问题。

答案 1 :(得分:0)

您可以尝试:

chown sqoop:sqoop /var/lib/sqoop 
chmod 755 /var/lib/sqoop

但你的问题可能不是这个。您可以查看作业历史记录服务器Web UI以获取详细日志。