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
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
sudo vim /etc/profile export SQOOP_HOME=/home/hadoop/software/sqoop-1.4.5.bin_hadoop-2.0.4-alpha export PATH=$SQOOP_HOME/bin:$PATH ###如下两行在sqoop-env.sh配置,在此处将其注释掉 #export HADOOP_COMMON_HOME=/home/hadoop/software/hadoop-2.5.2 #export HADOOP_MAPRED_HOME=/home/hadoop/software/hadoop-2.5.2
3. 修改配置文件
cp sqoop-env-template.sh sqoop-env.sh cp sqoop-site-template.xml sqoop-site.xml4. 修改sqoop-env.sh文件
export HADOOP_COMMON_HOME=/home/hadoop/software/hadoop-2.5.2 export HADOOP_MAPRED_HOME=/home/hadoop/software/hadoop-2.5.2 export HIVE_HOME=/home/hadoop/software/apache-hive-0.14.0-bin1. 检查检查$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 执行结果
错误处理 这个错误是指定sqoop import时报的错,解决办法是把mysql的jdbc连接串,把localhost改为实际的IP或者域名