特别说明:sqoop-1.4.5.bin__hadoop-0.20.tar.gz不支持hadoop 2.2版本
1、下载安装包sqoop-1.4.5.bin__hadoop-2.0.4-alpha.tar.gz
sqoop官方下载地址:http://mirror.nexcess.net/apache/sqoop/
2、在安装目录(e.g. /home/tseg/)下解压缩:
tar -zxvf sqoop-1.4.5.bin__hadoop-2.0.4-alpha.tar.gz
3、修改sqoop配置文件
cd /home/tseg/sqoop-1.4.5/conf
cp sqoop-env-template.sh sqoop-env.sh
(注:conf/下原本只有sqoop-env-template.sh,通过复制形成新文件sqoop-env.sh)
在文件sqoop-env.sh的末尾追加如下几个环境变量设置:
export HADOOP_COMMON_HOME=/home/tseg/hadoop-2.2.0
export HADOOP_MAPRED_HOME=/home/tseg/hadoop-2.2.0
注意:HADOOP_MAPRED_HOME=/home/tseg/hadoop-2.2.0/share/hadoop/mapreduce 不能这样写,否则会因为找不到hadoop的类而抛出异常
若有HIVE,HBASE也要添加其目录(e.g. export HIVE_HOME=/home/tseg/hive-0.12.0)
4、 将数据库的jdbc驱动程序放到$SQOOP_HOME/lib目录下
将 mysql-connector-java-5.1.32.jar 复制到 :/home/tseg/sqoop-1.4.5/lib目录下
5、配置环境变量
/etc/profile(在文件最后添加)
vi /etc/profile
export SQOOP_HOME=/usr/local/sqoop
export PATH=$PATH:$SQOOP_HOME/bin
使环境变量立即生效(在命令行输入)
source /etc/profile
6、试用sqoop
列出tseg0下的所有的关系数据库
sqoop list-databases --connect jdbc:mysql://tseg0:3306/ --username root --password 1234
将数据库bcpdm_web中,表company_info导入到/user/tseg/xxx/sqoop5下
sqoop import --connect jdbc:mysql://tseg0:3306/bcpdm_web --username root --password 1234 --table company_info --target-dir /user/tseg/XXX/sqoop5
这里需要注意,sqoop有两个版本:
sqoop-1.4.5.bin__hadoop-1.0.0.tar.gz(对应hadoop1版本)
sqoop-1.4.5.bin__hadoop-2.0.4-alpha.tar.gz(对应hadoop2版本)