sqoop将特定列从hdfs导出到mysql无法正常工作

j13ufse2  于 2021-06-04  发布在  Sqoop
关注(0)|答案(1)|浏览(424)

我的hdfs文件包含5列。

emp_no,birth_date,first_name,last_name,hire_date

我只想导出3列:

emp_no,first_name,last_name

我是和你一起做的

sqoop export
  --connect jdbc:mysql://mysql.example.com/sqoop
  --username sqoop
  --password sqoop
  --table employees
  --columns "emp_no,first_name,last_name"
  --export-dir /user/dataset/employees

但我越来越 emp_no , birth_date 以及 first_name 在mysql表中。
我的表中有3列,但有一列我不想跳过 --columnssqoop export

rn0zuynd

rn0zuynd1#

我解决了我的问题。实际上我误解了选项--导出列。
使用--columns选项进行导出,我们可以选择列的子集或控制表列(或目标列,例如mysql列)的顺序,而不是hdfs列。
此选项决定hdfs源列与目标表的--columns选项中提到的列的绑定。
e、 g.如果我在sqoop命令中提到--列“col2,col3,col1”,其中col1,col2,col3是mysql表的列
然后它将col2与hdfs源的第一列绑定,col3与hdfs源的第二列绑定,依此类推。。

相关问题