概述
- sqoop 是 Apache组织提供的一套数据迁移工具, 用于HDFS和关系型数据库之间的导入和导出
- 可以从HDFS导出数据到关系型数据库, 也可以从惯性型数据库中导出数据到HDFS
实现步骤
-
解压 sqoop 安装包
-
将mysql驱动包放到 安装目录下的lib目录下
-
复制并编辑
sqoop-env.sh
23 export HADOOP_COMMON_HOME=/home/software/hadoop-2.7.6
24
25 #Set path to where hadoop-*-core.jar is available
26 export HADOOP_MAPRED_HOME=/home/software/hadoop-2.7.6
执行命令
进入 sqoop 的bin目录
命令 | 解释 |
---|---|
sh sqoop list-databases --connect jdbc:mysql://hadoop01:3306/ -username root -password root | 查看所有数据库 |
sh sqoop list-tables --connect jdbc:mysql://hadoop01:3306/hive -username root -password root | 查看数据库下的所有表 |
sh sqoop import --connect jdbc:mysql://hadoop01:3306/test -username root -password root --table tabx --target-dir ‘/sqoop/tabx’ --fields-terminated-by ‘|’ -m 1; | 将数据从关系型数据库传输到HDFS |
sh sqoop export --connect jdbc:mysql://hadoop01:3306/test -username root -password root --table tabx --export-dir ‘/sqoop/tabx/part-m-00000’ --table taby -m 1 --fields-terminated-by ‘|’; | 将数据从HDFS传输到关系型数据库 |