Sqoop的数据导入与导出

一、导入数据库表数据到HDFS

  • 从MySQL数据库服务器中的emp表导入HDFS。
  • 注意,mysql地址必须为服务器IP,不能是localhost或者机器名。
    /usr/bin/sqoop import \
    --connect jdbc:mysql://192.168.88.80:3306/test \
    --password 123456 \
    --username root \
    --table emp \
    --m 1
    

二、导入到HDFS指定目录

/usr/bin/sqoop import \
--connect jdbc:mysql://192.168.88.80:3306/test \
--username root \
--password 123456 \
--delete-target-dir \
--table emp_add \
--target-dir /sqoop/emp \
-m 1

三、导入到hdfs指定目录并指定字段之间的分隔符

/usr/bin.sqoop import \
--connect jdbc:mysql://192.168.88.80:3306/test \
--username root \
--password 123456 \
--delete-target-dir \
--table emp \
--target-dir /sqoop/emp2 \
--m 1 \
--fields-terminated-by '\t'

四、导入关系表到HIVE

/usr/bin/sqoop import \
--connect jdbc:mysql://192.168.88.80:3306/test \
--username root \
--password 123456 \
--table emp \
--fields-terminated-by '\t' \
--hcatalog-database sqooptohive \
--hcatalog-table emp_hive \
--m 1

五、where导入到HDFS

/usr/bin/sqoop import \
--connect jdbc:mysql://192.168.88.80:3306/test \
--username root \
--password 123456 \
--table emp_add \
--target-dir /sqoop/emp_add \
--m 1
--delete-target-dir \
--where "city='sec-bad'"

六、sql语句查找导入hdfs

/usr/bin/sqoop import \
--connect jdbc:mysql://192/168.88.80:3306/test \
--username root \
--password 123456 \
--delete-target-dir \
--m 1 \
--query "select phno from emp_conn where 1=1 and \$CONDITIONS" \
--target-dir /sqoop/emp_conn

七、增量导入数据到Hive表

/usr/bin/sqoop import \
--connect jdbc:mysql://192.168.88.80:3306/test \
--username root \
--password 123456 \
--query "select * from emp where id>1203 and \$CONDITIONS" \
--fields-terminated-by '\t' \
--hcatalog-database sqooptohive \
--hcatalog-database emp_hive \
-m 1

八、Sqoop的数据导出

/usr/bin/sqoop export \
--connect jdbc:mysql://192.168.88.80:3306/test \
--username root \
--password 123456 \
--table emp_out \
--hcatalog-database sqooptohive \
--hcatalog-table emp_hive \
-m 1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值