下载地址:
http://mirrors.hust.edu.cn/apache/sqoop/
配置文件中sqoop-env.templa.sh
mv sqoop-env.templa.sh sqoop-env.sh
vi sqoop-env.templa.sh
#Set path to where bin/hadoop is available
export HADOOP_COMMON_HOME=/root/apps/hadoop-2.8.1
#Set path to where hadoop-*-core.jar is available
export HADOOP_MAPRED_HOME=/root/apps/hadoop-2.8.1
#set the path to where bin/hbase is available
#export HBASE_HOME=
#Set the path to where bin/hive is available
#export HIVE_HOME=
#Set the path for where zookeper config dir is
#export ZOOCFGDIR=
一、概述
sqoop 是 apache 旗下一款“Hadoop 和关系数据库服务器之间传送数据”的工具。
核心的功能有两个:
导入、迁入
导出、迁出
导入数据:MySQL,Oracle 导入数据到 Hadoop 的 HDFS、HIVE、HBASE 等数据存储系统
导出数据:从 Hadoop 的文件系统中导出数据到关系数据库 mysql 等 Sqoop 的本质还是一个命令行工具,和 HDFS,Hive 相比,并没有什么高深的理论。
sqoop:
工具:本质就是迁移数据, 迁移的方式:就是把sqoop的迁移命令转换成MR程序
hive
工具,本质就是执行计算,依赖于HDFS存储数据,把SQL转换成MR程序
sqoop list-databases \
> --connect jdbc:mysql://hdp-8:3306/ \
> --username root \
> --password root
sqoop list-tables \
> --connect jdbc:mysql://hadoop1:3306/mysql \
> --username root \
> --password root
sqoop create-hive-table \
--connect jdbc:mysql://hadoop1:3306/mysql \
--username root \
--password root \
--table help_keyword \
--hive-table hk
语法格式
sqoop import (generic-args) (import-args)
常用参数
–connect jdbc 连接地址
–connection-manager 连接管理者
–driver 驱动类
–hadoop-mapred-home $HADOOP_MAPRED_HOME
–help help 信息
-P 从命令行输入密码
–password 密码
–username 账号
–verbose 打印流程信息
–connection-param-file 可选参数
案例
sqoop import \
--connect jdbc:mysql://hadoop1:3306/mysql \
--username root \
--password root \
--table help_keyword \
-m 1