文档章节

【大数据之sqoop安装】

闪电
 闪电
发布于 2016/07/01 01:10
字数 631
阅读 34
收藏 0

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

Sqoop(发音:skup)是一款开源的工具,主要用于在Hadoop(Hive)与传统的数据库(mysql、postgresql...)间进行数据的传递,可以将一个关系型数据库(例如 : MySQL ,Oracle ,Postgres等)中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中。



 

一、安装

[root@hadoop0 opt]# tar -zxvf sqoop-1.4.6.bin__hadoop-2.0.4-alpha.tar.gz 

[root@hadoop0 opt]# clear

[root@hadoop0 opt]# ls

apache-storm-0.9.6.tar.gz  elasticsearch-2.3.3      jdk1.7.0_79             redis-3.2.0         scala-2.10.5           spark-1.3.1-bin-hadoop2.6.tgz               zookeeper-3.4.6.tar.gz   bigdata                    

elasticsearch-2.3.3.zip  kafka_2.11-0.9.0.1.tgz  redis-3.2.0.tar.gz  scala-2.10.5.tgz          

sqoop-1.4.6.bin__hadoop-2.0.4-alpha hadoop-2.7.2.tar.gz      ORCLfmap                rh                  spark-1.3.1-bin-hadoop2.6  sqoop-1.4.6.bin__hadoop-2.0.4-alpha.tar.gz

[root@hadoop0 opt]# mv sqoop-1.4.6.bin__hadoop-2.0.4-alpha sqoop-1.4.6

[root@hadoop0 opt]# cd sqoop-1.4.6/bin/

[root@hadoop0 bin]# ./sqoop list-tables --connect jdbc:mysql://192.168.1.102:3306/taokeeper --username root --password  123456

Warning: /opt/sqoop-1.4.6/bin/../../hcatalog does not exist! HCatalog jobs will fail.

Please set $HCAT_HOME to the root of your HCatalog installation.

Warning: /opt/sqoop-1.4.6/bin/../../accumulo does not exist! Accumulo imports will fail.

Please set $ACCUMULO_HOME to the root of your Accumulo installation.

Warning: /opt/sqoop-1.4.6/bin/../../zookeeper does not exist! Accumulo imports will fail.

Please set $ZOOKEEPER_HOME to the root of your Zookeeper installation.

99/04/29 18:46:52 INFO sqoop.Sqoop: Running Sqoop version: 1.4.6

99/04/29 18:46:52 WARN tool.BaseSqoopTool: Setting your password on the command-line is insecure. Consider using -P instead.

99/04/29 18:46:52 INFO manager.MySQLManager: Preparing to use a MySQL streaming resultset.

99/04/29 18:46:52 ERROR sqoop.Sqoop: Got exception running Sqoop: java.lang.RuntimeException: Could not load db driver class: com.mysql.jdbc.Driver

java.lang.RuntimeException: Could not load db driver class: com.mysql.jdbc.Driver

        at org.apache.sqoop.manager.SqlManager.makeConnection(SqlManager.java:856)

        at org.apache.sqoop.manager.GenericJdbcManager.getConnection(GenericJdbcManager.java:52)

        at org.apache.sqoop.manager.CatalogQueryManager.listTables(CatalogQueryManager.java:102)

        at org.apache.sqoop.tool.ListTablesTool.run(ListTablesTool.java:49)

        at org.apache.sqoop.Sqoop.run(Sqoop.java:143)

        at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)

        at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:179)

        at org.apache.sqoop.Sqoop.runTool(Sqoop.java:218)

        at org.apache.sqoop.Sqoop.runTool(Sqoop.java:227)

        at org.apache.sqoop.Sqoop.main(Sqoop.java:236)

解决方案:拷贝数据库驱动包到sqoop-1.4.6/lib中

 

[root@hadoop0 bin]# ./sqoop list-tables --connect jdbc:mysql://192.168.1.102:3306/taokeeper --username root --password  123456

Warning: /opt/sqoop-1.4.6/bin/../../hcatalog does not exist! HCatalog jobs will fail.

Please set $HCAT_HOME to the root of your HCatalog installation.

Warning: /opt/sqoop-1.4.6/bin/../../accumulo does not exist! Accumulo imports will fail.

Please set $ACCUMULO_HOME to the root of your Accumulo installation.

Warning: /opt/sqoop-1.4.6/bin/../../zookeeper does not exist! Accumulo imports will fail.

Please set $ZOOKEEPER_HOME to the root of your Zookeeper installation.

99/04/29 18:47:56 INFO sqoop.Sqoop: Running Sqoop version: 1.4.6

99/04/29 18:47:56 WARN tool.BaseSqoopTool: Setting your password on the command-line is insecure. Consider using -P instead.

99/04/29 18:47:56 INFO manager.MySQLManager: Preparing to use a MySQL streaming resultset.

alarm_settings

taokeeper_settings

taokeeper_stat

zookeeper_cluster

[root@hadoop0 bin]# cat ~/.bash_profile 

# .bash_profile

 

# Get the aliases and functions

if [ -f ~/.bashrc ]; then

        . ~/.bashrc

fi

 

# User specific environment and startup programs

 

PATH=$PATH:$HOME/bin

 

JAVA_HOME=/opt/jdk1.7.0_79

STORM_HOME=/opt/bigdata/stomr096

HIVE_HOME=/opt/bigdata/hive2.0

HADOOP_HOME=/opt/bigdata/hadoop272

HBASE_HOME=/opt/bigdata/hbase-1.1.5

 

PATH=$PATH:$JAVA_HOME/bin:$STORM_HOME/bin:$HIVE_HOME/bin:$HADOOP_HOME/bin:$HBASE_HOME/bin

export JAVA_HOME STORM_HOME HIVE_HOME HADOOP_HOME HBASE_HOME

export PATH 

 

 

 

export SCALA_HOME=/opt/scala-2.10.5

export PATH=.:$SCALA_HOME/bin:$PATH

 

export HADOOP_COMMON_LIB_NATIVE_DIR=/opt/bigdata/hadoop272/lib/native

export HADOOP_OPTS="-Djava.library.path=/opt/bigdata/hadoop272/lib"

[root@hadoop0 bin]# 

 

二、验证



 

 

 

 

本文转载自:http://gaojingsong.iteye.com/blog/2303388

闪电
粉丝 75
博文 392
码字总数 6789
作品 0
海淀
技术主管
私信 提问
sqoop 1.4.6-cdh5.7.0安装

sqoop简介: Sqoop is a tool designed to transfer data between Hadoop and relational databases or mainframes. You can use Sqoop to import data from a relational database managem......

hnairdb
2018/10/30
146
0
大数据教程(13.5)sqoop数据迁移工具安装&简单导入实例

上一篇章节,介绍了azkaban的几个实战案例;本篇博客博主将为小伙伴们分享数据迁移工具sqoop的安装来帮助熟悉其使用。 一、概述 sqoop是apache旗下一款“Hadoop和关系数据库服务器之间传送数...

em_aaron
03/18
119
2
使用Sqoop实现HDFS与Mysql互转

简介 Sqoop是一个用来将Hadoop和关系型数据库中的数据相互转移的工具,可以将一个关系型数据库(例如 : MySQL ,Oracle ,Postgres等)中的数据导入到Hadoop的HDFS中,也可以将HDFS的数据导入...

疯狂的艺术家
2013/05/10
9.1K
1
Sqoop 架构解析及Sqoop1与Sqoop2比较

概述 Sqoop是Hadoop和关系数据库服务器之间传送数据的一种工具。它是用来从关系数据库如:MySQL,Oracle到Hadoop的HDFS,并从Hadoop的文件系统导出数据到关系数据库。 传统的应用管理系统,也...

PeakFang-BOK
2018/10/12
686
0
Sqoop1配置过程

注:sqoop官网提供sqoop1和sqoop2两个版本,sqoop2不支持hive、hbase等。 配置过程 1、解压sqoop tar包,本例解压到/usr/local/sqoop-1.4.6目录。 2、复制/usr/local/sqoop-1.4.6/conf下的s...

源子
2016/10/13
25
0

没有更多内容

加载失败,请刷新页面

加载更多

在C语言中“静态”是什么意思?

我已经在C代码的不同地方看到了static一词。 这就像C#中的静态函数/类(实现在对象之间共享)吗? #1楼 多文件变量作用域示例 在这里,我说明了静态如何影响多个文件中函数定义的范围。 交流...

javail
5分钟前
3
0
利用 FC + OSS 快速搭建 Serverless 实时按需图像处理服务

作者:泽尘 简介 随着具有不同屏幕尺寸和分辨率设备的爆炸式增长,开发人员经常需要提供各种尺寸的图像,从而确保良好的用户体验。目前比较常见的做法是预先为一份图像存放多份具有不同尺寸的...

阿里巴巴云原生
8分钟前
2
0
前端架构最佳实践

Folders-by-Feature Structure 胜过 Folders-by-Type Structure

lilugirl
18分钟前
3
0
Seata AT 模式启动源码分析

从上一篇文章「分布式事务中间件Seata的设计原理」讲了下 Seata AT 模式的一些设计原理,从中也知道了 AT 模式的三个角色(RM、TM、TC),接下来我会更新 Seata 源码分析系列文章。今天就来分...

后端进阶
19分钟前
3
0
Python中“自我”一词的目的是什么?

Python中self词的目的是什么? 我知道它是指从该类创建的特定对象,但是我看不到为什么要将它显式地作为参数添加到每个函数中。 为了说明这一点,在Ruby中,我可以这样做: class myClass ...

技术盛宴
21分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部