sqoop语句简单分析一

本文介绍了如何使用Sqoop从Oracle数据库导入数据到HDFS,包括指定连接、过滤条件、列分隔符、行分隔符、自定义列以及追加数据到已有目录等操作。
摘要由CSDN通过智能技术生成

 

最近在学习sqoop   分享几个小例子

 

1). 根据用户:CRMDEV (用户名大写) 密码:crmdev 导出10.10.35.65中的Oracle实例crmdev_standby  的表ORDR_MAIN 表的前10条记录

 ./sqoop import --connect jdbc:oracle:thin:@10.10.35.65:1521/crmdev_standby --username CRMDEV --password crmdev --table ORDR_MAIN --where "rownum < 10"

 

2). 指定导出数据的列分割符“0x001”,行分隔符"\0x002" ;指定输出的HDFS目录

条件中出现引号的情况时,内部引号变成单引号; 表没有主键时 可以自定义指定一列;

 

./sqoop import --connect jdbc:oracle:thin:@10.10.35.65:1521/crmdev_standby   --username CRMDEV --password crmdev --table CUST_BASE --where "daytime>to_date('2012-01-01','yyyy-MM-dd') and daytime<to_date('2013-01-01','yyyy-MM-dd')" --fields-terminated-by '\0x001' --lines-terminated-by '\0x002' --split-by 'CUSTID'  --target-dir /user/admin/CUST_BASE

 

3)追加到现有目录

[admin@hadoop-data-xiaoj bin]$ ./sqoop import --connect jdbc:oracle:thin:@10.10.35.65/crmdev_standby --username CRMDEV --password crmdev --table ORDR_PROD --where 'ordrid between 31211117058273-1000000 and 31211117058273+1000000' --fields-terminated-by '\0x001' --lines-terminated-by '\0x002' --split-by 'ORDRID' --append --target-dir '/user/admin/ORDR_PROD'

 

 

获取更多资料  请参考官方文档http://sqoop.apache.org/docs/1.4.2/SqoopUserGuide.html#_selecting_the_data_to_import

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值