sqoop在Linux中环境搭建,sqoop搭建和运行小结

一. 安装工具和操作系统:

macOs 4核8G  brew 安装 postgresql

二. 安装sqoop

brew install sqoop

会自动安装hadoop hbase hive zookeeper sqoop

三. 启动

brew services start habse

brew services start zookeeper

四. 安装hadoop(先看注意事项,修改响应的配置文件然后再启动hadoop)

参考链接: http://zhongyaonan.com/hadoop-tutorial/setting-up-hadoop-2-6-on-mac-osx-yosemite.html

注意: 我目前brew 安装的最新版本是:hadoop 3.0.0

1. 默认安装目录/usr/local/Cellar/hadoop/3.0.0/libexec

cd /usr/local/Cellar/hadoop/3.0.0/libexec

cd etc/hadoop/ 里面放置的是配置文件

教程里面 hadoop-env.sh不用配置

2. 修改配置文件:

vim yarn-site.xml

如果按照教程里面配置会出现错误:找不到或无法加载主类 org.apache.hadoop.mapreduce.v2.app.MRAppMaster

按照这个参考链接找到了答案:http://wenda.chinahadoop.cn/question/3069

需要再加入一个配置项:name:yarn.application.classpath

对应的值 value为执行hadoop classpath输出的结果

例如我的配置:注意版本和目录有可能不同,按照具体的输出修改

yarn.nodemanager.aux-services

mapreduce_shuffle

yarn.application.classpath

/usr/local/Cellar/hadoop/3.0.0/libexec/etc/hadoop:/usr/local/Cellar/hadoop/3.0.0/libexec/share/hadoop/common/lib/*:/usr/local/Cellar/hadoop/3.0.0/libexec/share/hadoop/common/*:/usr/local/Cellar/hadoop/3.0.0/libexec/share/ hadoop/hdfs:/usr/local/Cellar/hadoop/3.0.0/libexec/share/hadoop/hdfs/lib/*:/usr/local/Cellar/hadoop/3.0.0/libexec/share/hadoop/hdfs/*:/usr/local/Cellar/hadoop/3.0.0/libexec/share/hadoop/mapreduce/*:/usr/local/Cellar/hadoop/3.0.0/libexec/ share/hadoop/yarn:/usr/local/Cellar/hadoop/3.0.0/libexec/share/hadoop/yarn/lib/*:/usr/local/Cellar/hadoop/3.0.0/libexec/share/hadoop/yarn/*

3. 启动和重启

建议:每次删除掉/tmp/hadoop*

1. rm -rf /tmp/hadoop*

2. bin/hdfs namenode -format

每次重启或者首次启动都要执行,否则datanode可能无法启动

sbin/start-dfs.sh 启动dfs

sbin/start-yarn.sh

启动完成检验输入jps 获得如下输出表示没有问题,否则要检查各个步骤和报错,直到启动完毕,方可继续进行

5efba85c45e38d96327b90ac110b5000.png

五. 配置sqoop

1. 配置sqoop的环境变量(这一步灰常重要,官方文档里面貌似没有详细说明,我也是根据报错摸索的)

默认安装位置是:

cd /usr/local/Cellar/sqoop/1.4.6/libexec

vim conf/sqoop-env.sh

添加如下配置:根据具体版本和安装目录做调整

export JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk1.8.0_92.jdk/Contents/Home"

export HADOOP_HOME="/usr/local/Cellar/hadoop/3.0.0/libexec"

export HBASE_HOME="/usr/local/Cellar/hbase/1.2.6"

export HIVE_HOME="usr/local/Cellar/hive/2.3.1"

export ZOOCFGDIR="/usr/local/etc/zookeeper"

五. 测试

brew 默认把sqoop添加进入环境变量的

输入:sqoop version 会出现sqoop的版本号,warning里面一些组建的环境变量没有配置,暂时用不到不用管

b1cce857cf00bf344402987b17dae37a.png

6. 导出( 从hdfs导出到postgresql)

(1)先上传一个文件到hdfs

vim student.txt

内容如下:

1,Ace

2,zeus

3,tom

4,john

hadoop fs -put student.txt /user/test

/user/test目录是我搭建hadoop之后在hdfs上创建的目录

上传之后查看一下:hadoop fs -ls -R /user/test

(2)创建表这里使用的是postgresql数据库

07e768f7b0b7ba749ff65d78fd9697af.png

(3) 下载jdbc的jar包

我使用的是postgresql所以下载postgresql的jar包,大家可以根据响应的数据库类型下载相应的jdbc包

下载地址:https://jdbc.postgresql.org/download/postgresql-9.3-1101.jdbc41.jar

移动到/usr/local/Cellar/sqoop/1.4.6/libexec/lib目录下。根据版本修改路径

(4)运行

sqoop export --connect jdbc:postgresql://localhost:5432/test --username test --password newpass --table stud1 -m 1 --export-dir /user/test/student.txt

数据库密码别忘了修改

(5)结果

de3a6f8acf165a16ed014c1c4248a195.png

(6)查看结果

a3445b3e514eee8dcd0cba4eab2c5287.png

7. 导入从postgresql到hbase

sqoop import --connect jdbc:postgresql://localhost:5432/test --username test --password newpass --table stud1 -m 1

37b037d193eb642e7ce307ea47b4c535.png

至此poc完毕

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值