1、自由模式查询同步数据 (如下)
bin/sqoop import \
--connect jdbc:mysql://xxxxxurl、端口、库名xxxxxx?tinyInt1isBit=false \
--username 用户名 \
--password 密码 \
--null-string '\\N' \
--null-non-string '\\N' \
--query "select * from tablename where create_time='2018-08-22 17:17:56' and \$CONDITIONS" \
--fields-terminated-by '\t' \
--lines-terminated-by '\n' \
--hive-drop-import-delims \
--split-by id \
--target-dir /user/hive/warehouse/test.db/test_zhouhl
2、全量同步 (如下)
bin/sqoop import \
--connect jdbc:mysql://xxxxxurl、端口、库名xxxxxx?tinyInt1isBit=false \
--username 用户名 \
--password 密码 \
--null-string '\\N' \
--null-non-string '\\N' \
--table 具体的mysql的tablename \
--fields-terminated-by '\t' \
--lines-terminated-by '\n' \
--hive-drop-import-delims \
--where "DATE_FORMAT(create_time,'%Y%m%d')<${yyyyMMdd}" \
--num-mappers 1 \
--hive-import \
--hive-database test \
--hive-table test_zhouhl
3、增量同步 (如下)
bin/sqoop import \
--connect jdbc:mysql://xxxxxurl、端口、库名xxxxxx?tinyInt1isBit=false \
--username 用户名 \
--password 密码 \
--null-string '\\N' \
--null-non-string '\\N' \
--table 具体的mysql的tablename \
--fields-terminated-by '\t' \
--lines-terminated-by '\n' \
--hive-drop-import-delims \
--where "DATE_FORMAT(create_time,'%Y%m%d')=${yyyyMMdd-1d}" \
--num-mappers 1 \
--hive-import \
--hive-database test \
--hive-table test_zhouhl
4、同步为orc格式
bin/sqoop import \
--connect jdbc:mysql://xxxxxurl、端口、库名xxxxxx?tinyInt1isBit=false \
--username 用户名 \
--password 密码 \
--table bw_person_info \
--where "create_time is null or DATE_FORMAT(create_time,'%Y%m%d')<${yyyyMMdd}" \
--num-mappers 1 \
--create-hcatalog-table \ ---- 同步增量是这句要删除
--hcatalog-database ods \
--hcatalog-table ods_bdw_bw_person_info \
--hcatalog-storage-stanza "stored as orc"
具体的sqoop里面的属性可以参考:
https://blog.csdn.net/liangzelei/article/details/80305988
https://blog.csdn.net/zhifeiyu2008/article/details/50130033
https://blog.csdn.net/myrainblues/article/details/43673129
$CONDITIONS关键字解释可以参考:https://www.cnblogs.com/kouryoushine/p/7814312.html
关于 -D mapred.xxxxx 可以参考:
https://blog.csdn.net/jiangshouzhuang/article/details/51496375
如:-D mapred.job.queue.name=root.myqueue \ 使用的队列
-D mapred.task.timeout=0 \ 超时时间设置(毫秒),0表示不超时