Sqoop详细部署教程

Sqoop是一个将hadoop与关系型数据库之间进行数据传输,批量数据导入导出的工具,注意,导入是指将数据从RDBMS导入到hadoop而导出则是指将数据从hadoop导出到RDBMS,本篇博客承接上篇Hive的部署教程,废话不多说,直接开始流程

1. 安装准备

准备好以下安装包,使用的版本为1.4.7

2. 正式安装

1. 使用Xftp将tar.gz文件放到/home/centos/downloads目录下

2. 解压缩

cd /home/centos/downloads

tar -xzvf sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz -C /soft

3. 创建符号链接

cd /soft

ln -s sqoop-1.4.7.bin__hadoop-2.6.0 sqoop

4. 配置环境变量

nano /etc/profile

在文件末尾添加:

#sqoop环境变量
export SQOOP_HOME=/soft/sqoop
export PATH=$PATH:$SQOOP_HOME/bin

#添加hive依赖到hadoop的classpath下

export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:$HIVE_HOME/lib/*

保存退出后:

source /etc/profile

5. 修改配置文件

cd /soft/sqoop/conf

mv sqoop-env-template.sh sqoop-env.sh

nano sqoop-env.sh

修改以下代码后保存退出:

#Set path to where bin/hadoop is available

export HADOOP_COMMON_HOME=/soft/hadoop

#Set path to where hadoop-*-core.jar is available

export HADOOP_MAPRED_HOME=/soft/hadoop

#set the path to where bin/hbase is available

#export HBASE_HOME=

#Set the path to where bin/hive is available

export HIVE_HOME=/soft/hive

#Set the path for where zookeper config dir is

export ZOOCFGDIR=/soft/zk/conf

6. 放入mysql的驱动程序:

cp /soft/hive/lib/mysql-connector-java-5.1.44.jar /soft/sqoop/lib/

7. 查看sqoop的版本,sqoop version,出现以下信息说明配置成功!

3. 后续收尾

至此,sqoop的配置已经完成了,接下去还有一个后续工作要做,由于最新版的sqoop很有可能和hive或其他大数据组件版本上不兼容,导致以后在做导入导出操作的时候会报java异常,因此还需要进行以下4步操作

1. 复制hive的hive-site.xml文件到sqoop的conf下

cp /soft/hive/conf/hive-site.xml /soft/sqoop/conf

2. 修改jre下lib文件夹中的配置

cd /soft/jdk/jre/lib/security

修改java.policy中的内容

nano java.policy

在grant{}里添加以下内容:

// JMX Java Management eXtensions
permission javax.management.MBeanTrustPermission "register";

3. 将sqoop/lib下的jackson的jar包做备份,使用ipython将所有jackson的jar包加上.bak做备份

ipython

import os

back_up_file = [i for i in os.listdir('/soft/sqoop/lib') if i.startswith('jackson') and i.endswith('jar')]
new_file_name = [i + '.bak' for i in back_up_file]
D = '/soft/sqoop/lib/'
for i,j in zip(back_up_file, new_file_name):
  os.rename(D+i, D+j)

exit

4. 将hive/lib下所有的jackson的jar包复制到sqoop/lib下

cp /soft/hive/lib/jackson*.jar /soft/sqoop/lib

最新文章

  1. px、dp和sp,这些单位有什么区别?
  2. vs切换当前编辑文件时自动定位目录树
  3. 硅谷新闻8--TabLayout替换ViewPagerIndicator
  4. BZOJ3745 : [Coci2014]Norma
  5. IPhone 设备状态、闪光灯状态
  6. Maven Build Profiles--reference
  7. 界面动态加载时报NullPointException
  8. iOS-NSSDate的使用
  9. optimize table 表优化问题
  10. http://www.lanceyan.com/tech/mongodb/mongodb_repset1.html
  11. 无法识别的配置节 applicationSettings
  12. [原创]HBase学习笔记(4)- 数据导入
  13. hadoop环境搭建及Wordcount案例实验
  14. java如何获取一个对象的大小【转】
  15. angular-环境搭建
  16. 42 【docker】run命令
  17. 全排列(Perm)的递归实现算法
  18. python学习笔记_week7
  19. SpringBoot08 请求方式、参数获取注解、参数验证、前后台属性名不一致问题、自定义参数验证注解、BeanUtils的使用
  20. nmap扫描工具

热门文章

  1. MySQL如何永久解决由dos编码格式导致MySQ的显示乱码
  2. vuejs学习之新的components组件挂载
  3. 使用图数据库 Nebula Graph 数据导入快速体验知识图谱 OwnThink
  4. ecryptfs
  5. Beta阶段贡献分配
  6. 【论文阅读】Binary Multi-View Clustering
  7. 内核升级在线安装报错:Could not retrieve mirrorlist http://mirrors.elrepo.org/mirrors-elrepo-kernel.el7 error was14: curl#6 - "Could not resolve host: mirrors.elrepo.org; 未知的错误"
  8. logistic回归介绍以及原理分析
  9. 在React项目中添加ESLint
  10. 【RN - 基础】之React Native组件的生命周期