Sqoop是Hadoop生态里,实现Hive、Hbase等大数据数据库与MySQL、Oracle导入导出的工具。
其实就是包含两部分功能:(1)HDFS的读写能力(2)加载JDBC。
这篇文章记录了配置sqoop的步骤。在实验过程中,遇到了一些ERROR,反复百度也没有找到解决方法。最后,把sqoop安装文件夹删除,wget原始文件,重头配置了一遍,一切都OK了。还是“重装”最好用。
一、下载sqoop 1.4.7
如图,下载地址很好找。本文还是用sqoop1。
下载页面下有两个链接,使用sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz,包含hadoop支持。不要用sqoop-1.4.7.tar.gz。
二、下载mysql-connector-java
到mysql官网查找mysql-connector/j,下载mysql服务器对应版本5.1.x,platform independent版。
解压之后,拷贝一下两个文件到sqoop安装目录lib.
三、修改配置
添加环境变量
export SQOOP_HOME="/opt/sqoop"
export PATH=$SQOOP_HOME/bin:$PATH
主要配置文件sqoop/config/sqoop-env.sh,设置hadoop路径。
#Set path to where bin/hadoop is available
export HADOOP_COMMON_HOME=/opt/hadoop-2.7.3
#Set path to where hadoop-*-core.jar is available
export HADOOP_MAPRED_HOME=/opt/hadoop-2.7.3
四、测试
bin/sqoop-list-databases --connect jdbc:mysql://mysql1:3306 --username shell --password 123456
Please set ACCUMULO_HOME to the root of your Accumulo installation.
18/09/05 09:01:47 INFO sqoop.Sqoop: Running Sqoop version: 1.4.7
18/09/05 09:01:47 WARN tool.BaseSqoopTool: Setting your password on the command-line is insecure. Consider using -P instead.
18/09/05 09:01:47 INFO manager.MySQLManager: Preparing to use a MySQL streaming resultset.
information_schema
Alibaba
db
hadooptrain
metastore
mysql
performance_schema
test
测试成功!
五、总结
第一次安装之后出现问题,各种百度,各种试,最后按标准流程做了一遍,测试通过。
总结这种方法,仔细读手册,掌握官方jar下载路径。
NoClassDefFoundError: org/apache/avro/LogicalType
这个问题出现了,没有解决,希望再遇到的同学和我一样,按官方jar下载重装解决。
我的博客即将入驻“云栖社区”,诚邀技术同仁一同入驻