Sqoop(2)——安装
下载解压
http://www.apache.org/dyn/closer.lua/sqoop/1.4.7
【可选步骤】配置环境变量
添加数据库驱动包
如果需要连接的关系型数据库是Mysql,那么就需要将Mysql的驱动包拷贝至sqoop的lib下。
cp mysql-connector-java-5.1.10.jar /sqoop-install-path/lib
重命名配置文件
mv sqoop-env-template.sh sqoop-env.sh
-
修改配置文件
(可选配置)HADOOP_COMMON_HOME
如果在系统的环境变量中配置了HADOOP_HOME则可以不用配置此项,否则就必须配置。配置值是HADOOP的根目录
(可选配置)HADOOP_MAPRED_HOME
如果在系统的环境变量中配置了HADOOP_HOME则可以不用配置此项,否则就必须配置。配置值是HADOOP的根目录
(可选配置)HIVE_HOME
本例子中最终是将数据从Mysql导入到Hive,所以需要配置HIVE_HOME,同样的,如果在系统的环境变量中配置了HIVE_HOME,则不需要在sqoop-env.sh文件中配置,否则就必须配置。
测试
sqoop version
这个命令用来查看sqoop的版本
sqoop list-databases -connect jdbc:mysql://node3:3306/ -username root -password 123
这个命令用来查看mysql数据库中数据库的列表
去掉Warning
上面执行命令过程中总是会出现警告,是因为我们有的模块没有配置,例如HCatalog模块、Accumulo模块,这些没有用到的模块没有配置并不影响工作,如果想去掉警告可以在$SQOOP_HOME/bin/configure-sqoop文件中注释掉相应的代码,如下:
修改配置configure-sqoop
去掉未安装服务相关内容;例如(HBase、HCatalog、Accumulo):
#if [ ! -d "${HBASE_HOME}" ]; then
# echo "Error: $HBASE_HOME does not exist!"
# echo 'Please set $HBASE_HOME to the root of your HBase installation.'
# exit 1