下载安装包

sqoop-1.99.3-bin-hadoop200.tar.gz

解压

tar zxvf sqoop-1.99.3-bin-hadoop200.tar.gz

建立sqoop链接

ln -s sqoop-1.99.3-bin-hadoop200 sqoop

修改sqoop配置

cd sqoop

vi server/conf/catalina.properties

修改内容如下:
找到common.loader行,把/usr/lib/hadoop/lib/*.jar改成你的hadoop jar 包目录
例如:/home/hadoop/hadoop/share/hadoop/yarn/lib/*.jar,
/home/hadoop/hadoop/share/hadoop/yarn/*.jar,
/home/hadoop/hadoop/share/hadoop/hdfs/*.jar,
/home/hadoop/hadoop/share/hadoop/hdfs/lib/*.jar,
/home/hadoop/hadoop/share/hadoop/mapreduce/*.jar,
/home/hadoop/hadoop/share/hadoop/mapreduce/lib/*.jar,
/home/hadoop/hadoop/share/hadoop/common/lib/*.jar,
/home/hadoop/hadoop/share/hadoop/common/*.jar

vi server/conf/sqoop.properties
找到:mapreduce.configuration.directory行,修改值为你的hadoop配置文件目录
如:/home/hadoop/hadoop/etc/hadoop/
并且替换@LOGDIR@ 和@BASEDIR@ :
0,$ s/@LOGDIR@/logs/g
0,$ s/@BASEDIR@/base/g

然后找到你的数据库jdbc驱动复制到sqoop/lib目录下,如果不存在则创建

修改环境参数

vi /etc/profile

增加以下内容:

export SQOOP_HOME=/home/hadoop/sqoop

export PATH=$PATH:$SQOOP_HOME/bin

export CATALINA_BASE=$SQOOP_HOME/server

export LOGDIR=$SQOOP_HOME/logs/

执行环境参数

source /etc/profile

启动

./bin/sqoop.sh server start

测试

bin/sqoop.sh client
默认sqoop开启ports 12000 and 12001

停止

./bin/sqoop.sh server stop

Configure client to use your Sqoop server:

sqoop:000> set server --host your.host.com --port 12000 --webapp sqoop
显示版本:show version --all
显示连接器:show connector --all
创建连接:create connection --cid 1
Creating connection for connector with id 1
Please fill following values to create new connection object
Name: First connection Configuration configuration
JDBC Driver Class: com.mysql.jdbc.Driver
JDBC Connection String: jdbc:mysql://mysql.server/database
Username: sqoop
Password: *****
JDBC Connection Properties:
There are currently 0 values in the map:
entry# Security related configuration options
Max connections: 0
New connection was successfully created with validation status FINE and persistent id 1
显示连接:show connection
创建任务:create job --xid 1 --type import
sqoop:000> create job --xid 1 --type import
Creating job for connection with id 1
Please fill following values to create new job object
Name: First job Database configuration
Table name: users
Table SQL statement:
Table column names:
Partition column name:
Boundary query: Output configuration
Storage type:
0 : HDFS
Choose: 0
Output directory: /user/jarcec/users
New job was successfully created with validation status FINE and persistent id 1
 Throttling resources
    Extractors: 20
    Loaders: 10
注意创建job过程中会出现Extractors跟Loaders分别对应map 跟reduce个数
启动任务:start job --jid 1
启动任务同步执行:start job --jid 1 -s
显示任务:status job --jid 1
显示所有任务:show job -a
停止任务:stop job --jid 1
克隆连接:clone connection --xid 1
克隆任务:clone job --jid 1
 
运行wordcount出现:Application application_1396260476774_0001 failed 2 times due to AM Container for appattempt_1396260476774_0001_000002 exited with exitCode: 1 due to: Exception from container-launch
查看
hadoop/logs/userlogs/application_1386683368281_0001/container_1386683368281_0001_01_000001/stderr
 
yarn配置修改完后,可以正常跑wordcount,sqoop还是提示Exception from container-launch: 这个时候把sqoop server 重启就行
 
导出数据出现异常
is running beyond physical memory limits. Current usage: 1.1 GB of 1 GB physical memory used; 1.6 GB of 6 GB virtual memory used. Killing container. 
修改mapred-site.xml
<property>
<name>mapred.map.child.java.opts</name>
<value>-Xmx8000m</value>
</property>
yarn-site.xml
        <property>
                <name>yarn.nodemanager.vmem-pmem-ratio</name>
                <value>8</value>
        </property>
 
        <property>
                <name>yarn.app.mapreduce.am.resource.mb</name>
                <value>2046</value>
        </property>
 
使用sqoop导入数据时,当数据量变大时,在map/reduce的过程中就会提示 java heap space error。经过总结,解决方法有两个:
1、 修改每个运行子进程的jvm大小
 修改mapred-site.xml文件,添加以下属性:
<property>
  <name>mapred.child.java.opts</name>
  <value>-Xmx8000m</value>
</property>
<property>
  <name>mapred.reduce.child.java.opts</name>
  <value>-Xmx8000m</value>
</property>
<property>
  <name>mapred.map.child.java.opts</name>
  <value>-Xmx8000m</value>
</property>
 
2、 增加map数量,
sqoop job里设置Extractors与Loaders数量
 

sqoop部署的更多相关文章

  1. Hadoop生态圈-Sqoop部署以及基本使用方法

    Hadoop生态圈-Sqoop部署以及基本使用方法 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. Sqoop(发音:skup)是一款开源的工具,主要用于在Hadoop(Hive)与 ...

  2. sqoop部署及使用

    一.概述 sqoop是hive.hdfs.hbase等与RDMBS(mysql等)之间的沟通桥梁,主要通过JDBC与RDMBS进行交互.有两个版本sqoop1和sqoop2,sqoop1架构简单,使用 ...

  3. sqoop部署与使用

    sqoop安装 1.下载并解压 scp sqoop-1.4.6.bin__hadoop-2.0.4-alpha.tar.gz mini1:/root/apps/ tar -zxvf sqoop-1.4 ...

  4. 数据搬运组件:基于Sqoop管理数据导入和导出

    本文源码:GitHub || GitEE 一.Sqoop概述 Sqoop是一款开源的大数据组件,主要用来在Hadoop(Hive.HBase等)与传统的数据库(mysql.postgresql.ora ...

  5. hadoop伪分布式平台组件搭建

    第一部分:系统基础配置 系统基础配置中主完成了安装大数据环境之前的基础配置,如防火墙配置和安装MySQL.JDK安装等 第一步:关闭防火墙 Hadoop与其他组件的服务需要通过端口进行通信,防火墙的存 ...

  6. sqoop安装部署(笔记)

    sqoop是一个把关系型数据库数据抽向hadoop的工具.同时,也支持将hive.pig等查询的结果导入关系型数据库中存储.由于,笔者部署的hadoop版本是2.2.0,所以sqoop的版本是:sqo ...

  7. 大数据学习笔记——Sqoop完整部署流程

    Sqoop详细部署教程 Sqoop是一个将hadoop与关系型数据库之间进行数据传输,批量数据导入导出的工具,注意,导入是指将数据从RDBMS导入到hadoop而导出则是指将数据从hadoop导出到R ...

  8. 阿里云ECS服务器部署HADOOP集群(七):Sqoop 安装

    本篇将在 阿里云ECS服务器部署HADOOP集群(一):Hadoop完全分布式集群环境搭建 阿里云ECS服务器部署HADOOP集群(二):HBase完全分布式集群搭建(使用外置ZooKeeper) 阿 ...

  9. Sqoop的安装部署

    在root的用户下 1):前提 安装JDK环境 2):前提 安装Hadoop和Hive客户端环境,如果需要导出到HBase则需要安装HBase客户端 3):下载sqoop : 命令: wget htt ...

随机推荐

  1. 借One-Class-SVM回顾SMO在SVM中的数学推导--记录毕业论文5

    上篇记录了一些决策树算法,这篇是借OC-SVM填回SMO在SVM中的数学推导这个坑. 参考文献: http://research.microsoft.com/pubs/69644/tr-98-14.p ...

  2. 第二轮冲刺-Runner站立会议08

    今天:优化日历界面 明天:将日历界面与主程序结合

  3. (转)PostgreSQL 兼容Oracle - orafce

    转自:http://blog.163.com/digoal@126/blog/static/1638770402015112144250486/ PostgreSQL是和Oracle最接近的企业数据库 ...

  4. Bash 为何要发明 shopt 命令

    在 Bash 中,有两个内置命令用来控制 Bash 的各种可配置行为的开关(打开或关闭),这些开关称之为选项(option).其中一个命令是 set,set 命令有三种功能:显示所有的变量和函数:修改 ...

  5. 【重装系统】线上Linux服务器(2TB)分区参考方案

    如果是线上服务器,假设它是 2TB 的 SATA 硬盘.8GB 内存,建议按如下方式进行分区: / 20480M(20G)(主分区) /boot 128M swap 10240M /data 2016 ...

  6. MySQL 5.5编译安装

    MYSQL数据库安装方法 yum/rpm方式安装mysql 只要执行yum install mysql-server即可. yum/rpm方式安装mysql应用场景:yum/rpm安装适用对数据库要求 ...

  7. Hadoop家族的各个成员

    官方定义:hadoop是一个开发和运行处理大规模数据的软件平台.核心词语是平台,也就是说我们有大量的数据,又有好几个电脑,我们知道应该把处理数据的任务分解到各个电脑上,但是不知道怎样分配任务,怎样回收 ...

  8. C#获取命令行输出内容的方法

    获取命令行输出内容的方式有传统和异步两种方式. 传统方式: public static void RunExe(string exePath, string arguments, out string ...

  9. access日期与sql server日期区别

    如选取一段时间内的数据,time1和time2是时间起始字符串,则 sql server命令: string strSQL=" 日期 >='"+time1+"' A ...

  10. IIS跳转html页面自动识别是PC端还是手机端

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...