安装Sqoop

1.下载sqoop安装包

我下载的是sqoop安装包sqoop-1.4.3.tar.gz。

2.解压安装包

tar -zxvf sqoop-1.4.3.tar.gz

sudo mv sqoop-1.4.3 /usr/local/

配置环境变量:SQOOP_HOME,CLASSPATH,PATH

同时将Sqoop_home下的sqoop-1.4.3.jar放到hadoop_home/lib中。

3.补充jar包

安装包中没有sqoop-1.4.3.jar这个包,需要单独下载这个包。sqoop-1.4.3.bin__hadoop-1.0.0.tar.gz此包中包含有sqoop-1.4.3.jar,可以下载这个包之后单独解压出sqoop-1.4.3.jar,把这个jar包放到sqoop的lib目录中$SQOOP_HOME/lib。

如果没有此包会报如下错误:

 Could not find or load main classorg.apache.sqoop.Sqoop

4.去掉hbase的相关检查

编辑sqoop-1.4.3/bin/configure-sqoop注释掉73-77行的hbase检查,如果使用了hbase的话可以不用注释掉

 5.配置jdbc驱动

我使用的是MySQL,将mysql-connector-java-5.1.26-bin.jar放入${sqoop_home}/lib中

6.Sqoop测试

(1)sqoop list-databases --connect jdbc:mysql://127.0.0.1:3306/ --username ff --password ff

显示数据库连接信息:information_schema    hive   test

(2).sqoop import --connect jdbc:myql://sqlserver_ip/dbName --username ff --password ff --table test --hive--import -m 1

(3).sqoop import --connect jdbc:mysql://mysqlserver_IP/databaseName --table testTable -m 1 

mysqlserver_ip是mysql服务器地址,分布式下必须不为localhost; testTable是表名; -m 1指定使用一个map任务,默认4个;

数据导入一般都是通过脚本来执行,比较方便一点。比如sqoop-import.sh,里面内容如下:

  1. CONNECT_URL=jdbc:oracle:thin:@192.168.27.160:1521:mydb1  
  2. DB_NAME=dp  
  3. DB_PWD=dp  
  4. TABLE_NAME=TEST_TB  
  5. COLUMNS=TEST_ID,TEST_NAME  
  6. HDFS_PATH=ORA_DATA/${TABLE_NAME}  
  7. sqoop import --append --connect $CONNECT_URL --username $DB_NAME --password  
  8. $DB_PWD --target-dir $HDFS_PATH --num-mappers 1 --table $TABLE_NAME --column  
  9. s $COLUMNS --fields-terminated-by '\001'  
前面的都是常量参数,CONNECT_URL :数据库URL,然后DB_NAME用户名、DB_PWD密码,TABLE_NAME是准备导入的表名,COLUMNS是准备导入的列名,HDFS_PATH是导入的数据在DFS上存储的路径,这里写的是相对路径,导入成功后会在hdfs://ip:port/user/hadoop/DB_DATA目录下面创建TEST_TB目录,数据就存放在该目录下面。sqoop import是导入命令,参数用的是上面定义的参数,这样需要导入另外一张表的时候,只需要修改TABLE_NAME,COLUMNS两个参数就可以了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值