sqoop-1.4.5和hadoop-2.5.2集成

Sqoop安装与配置

Sqoop的运行需要依赖于Hadoop,因此需要首先安装Hadoop2.5.2,并且Sqoop的启动前需要首先安装Hadoop。

本文使用如下版本

  • sqoop-1.4.5.bin_hadoop-2.0.4-alpha版本,
  • Hadoop使用2.5.2版本

Sqoop安装和配置的步骤

1. 从如下地址下载Sqoop 

Java代码   收藏代码
  1. http://mirror.bit.edu.cn/apache/sqoop/1.4.5/sqoop-1.4.5.bin__hadoop-2.0.4-alpha.tar.gz  

注意安装包中hadoop前面是__(两个下划线) ,把其中的一个_去掉

 2.解压sqoop,在系统变量里配置如下变量SQOOP_HOME和PATH

Java代码   收藏代码
  1. sudo  vim /etc/profile  
  2.   
  3. export SQOOP_HOME=/home/hadoop/software/sqoop-1.4.5.bin_hadoop-2.0.4-alpha  
  4. export PATH=$SQOOP_HOME/bin:$PATH  
  5.   
  6. ###如下两行在sqoop-env.sh配置,在此处将其注释掉  
  7. #export HADOOP_COMMON_HOME=/home/hadoop/software/hadoop-2.5.2  
  8. #export HADOOP_MAPRED_HOME=/home/hadoop/software/hadoop-2.5.2   

3. 修改配置文件

Java代码   收藏代码
  1. cp sqoop-env-template.sh sqoop-env.sh  
  2. cp sqoop-site-template.xml sqoop-site.xml   
4. 修改sqoop-env.sh文件
Java代码   收藏代码
  1. export HADOOP_COMMON_HOME=/home/hadoop/software/hadoop-2.5.2  
  2.   
  3. export HADOOP_MAPRED_HOME=/home/hadoop/software/hadoop-2.5.2  
  4.   
  5. export HIVE_HOME=/home/hadoop/software/apache-hive-0.14.0-bin  
 1. 检查检查$SQOOP_HOME/lib下是否有MySQL的JDBC驱动有mysql-connector-java-5.1.34.jar  2. 如果没有则下载到此目录、   1. 首先运行Hadoop   2. 再次运行MySQL     参数说明: --table 指定要导入到HDFS中的表名 --fields-terminated-by 指定保存到HDFS上的每一行使用什么分隔符来分隔MySQL数据行的列 --m1 表示MapperTask的个数为1 --target-dir 表示导入到HDFS中的目录   5.2 导入过程  


    5.3 查看HDFS中的导入状态      6. HDFS数据导出到MySQL中     6.1 首先在MySQL中创建表person2       6.2 执行sqoop导出操作       6.3 执行过程


      6.4 执行结果

      错误处理 1    这个错误是指定sqoop import时报的错,解决办法是把mysql的jdbc连接串,把localhost改为实际的IP或者域名      

猜你喜欢

转载自hymanliu.iteye.com/blog/2191206