Sqoop导入/导出Hive到Mysql中包含自增ID字段/自动写入时间字段

场景:

从Hive导出数据表到Mysql并且Mysql表已创建,其中存在的Mysql表中还有一个Hive中没有的自增ID字段(自动写入时间字段类似这里不再重复叙述)。

这种情况怎么使用Sqoop呢?

 

可以使用 --columns参数来指定要导入/导出的字段,其余字段(自增ID/写入时间字段等)Mysql中会自动更新;

sqoop export -D mapred.job.name="任务的名字" -D mapred.job.queue.name=root.hdfs --connect jdbc:mysql://ip:port/db?zeroDateTimeBehavior=convertToNull --username user_name --password password --table mysql_table --export-dir /hdfs/xxx/dt=2019-12-31/ --outdir /缓存路径xxxx/sqoop_generated --num-mappers 1 --input-null-string ‘\\N‘ --input-null-non-string ‘\\N‘ --fields-terminated-by ‘\001‘ --columns "col1,col2,col3”

上面的命令任务的名字、任务的队列可以选填,删减掉一些可选项如下:

sqoop export --connect jdbc:mysql://ip:port/db?zeroDateTimeBehavior=convertToNull --username user_name --password password --table mysql_table --export-dir /hdfs/xxx/dt=2019-12-31/ --outdir /缓存路径xxxx/sqoop_generated --num-mappers 1 --input-null-string ‘\\N‘ --input-null-non-string ‘\\N‘ --fields-terminated-by ‘\001‘ --columns "col1,col2,col3”
 

  

Sqoop导入/导出Hive到Mysql中包含自增ID字段/自动写入时间字段

上一篇:MySQL高级学习之表锁


下一篇:MySQL之select in 子查询优化