Linux搭建Sqoop开发环境

Linux搭建Sqoop开发环境
1.Sqoop
Sqoop是Hadoop和关系数据库服务器之间传送数据的一种工具。它是用来从关系数据库如: MySQL ,Oracle到Hadoop的HDFS,并从Hadoop的文件系统导出数据到关系数据库。
传统的应用管理系统,也就是与关系型数据库的使用RDBMS应用程序的交互,是产生大数据的来源之一。这样大的数据,由关系数据库生成的,存储在关系数据库结构关系数据库服务器。
当大数据存储器和分析器,如MapReduce, Hive, HBase, Cassandra, Pig等,Hadoop的生态系统等应运而生图片,它们需要一个工具来用的导入和导出的大数据驻留在其中的关系型数据库服务器进行交互。在这里,Sqoop占据着Hadoop生态系统提供关系数据库服务器和Hadoop HDFS之间的可行的互动。
Sqoop:“SQL 到 Hadoop 和 Hadoop 到SQL”
Sqoop是Hadoop和关系数据库服务器之间传送数据的一种工具。它是用来从关系数据库如MySQL,Oracle到Hadoop的HDFS从Hadoop文件系统导出数据到关系数据库。它是由Apache软件基金会提供。
 
2. Sqoop的工作流程:
3.安装Sqoop
【1】 下载Sqoop安装包: sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz
【2】 利用Xftp工具把安装包上传到服务器:/usr/local/sqoop,其中sqoop-1.4.7支持hadoop-2.6.0以上版本,我这里选择了sqoop-1.4.6,其中 sqoop-1.4.6 支持 haoop- 2.0.4 以上 版本:
【3】 Xshell使用cd命令进入到sqoop的安装目录:cd /usr/local/sqoop:
【4】使用tar -xvf 解压xx.tar.gz压缩包:tar -xvf sqoop-1.4.6.tar.gz
【5】 把mysql的jdbc驱动 mysql-connector-java-5.1.46.jar 复制到sqoop安装包的lib目录下:
【6】 Xhell使用cd命令进入到:cd /usr/local/sqoop/sqoop-1.4.6/conf, 中执行命令:mv sqoop-env-template.sh sqoop-env.sh
【7】配置环境变量:vim /etc/profile,输入:source  /etc/profile,使得环境变量生效
#Setting SQOOP_HOME Path
export  SQOOP_HOME=/usr/local/sqoop/sqoop-1.4.6
export  PATH=${PATH}:${SQOOP_HOME}/bin
 
 
【8】 修改配置文件sqoop-env.sh:
#Set path to where bin/hadoop is available
#export HADOOP_COMMON_HOME=
export HADOOP_COMMON_HOME=/usr/local/hadoop/hadoop-2.7.5
 
#Set path to where hadoop-*-core.jar is available
#export HADOOP_MAPRED_HOME=
export HADOOP_MAPRED_HOME=/usr/local/hadoop/hadoop-2.7.5
 
#set the path to where bin/hbase is available
#export HBASE_HOME=
export HBASE_HOME=/usr/local/hadoop/hadoop-2.7.5
 
#Set the path to where bin/hive is available
#export HIVE_HOME=
export HIVE_HOME=/usr/local/hive/hive-2.3.2
 
#Set the path for where zookeper config dir is
#export ZOOCFGDIR=
export ZOOCFGDIR=/usr/local/sqoop/repository/zookeper
 
4.测试Sqoop:
【1】 列出mysql数据库中的所有数据库 :sqoop list-databases --connect 数据库链接字符串 -username 数据库用户名 -password 数据库密码
  例如:sqoop list-databases --connect jdbc: mysql://localhost:3306/ -username root -password 123456Abc
 
【2】 连接mysql并列出数据库中的表:sqoop list-tables --connect 数据库链接字符串 --username 数据库用户名 --password 数据库密码
例如: sqoop list-tables --connect jdbc: mysql://localhost:3306/hive -username root -password 123456Abc
 

猜你喜欢

转载自mazhilin.iteye.com/blog/2421559