Hadoop高手之路--08--Sqoop数据迁移
Sqoop数据迁移
一、sqoop概述
1、简介
Sqoop是Apache的一款开源工具,Sqoop主要用于在Hadoop和关系数据库或大型机之间传输数据,可以使用Sqoop工具将数据从关系数据库管理系统导入(import)到Hadoop分布式文件系统中,或者将Hadoop中的数据转换导出(export)到关系数据库管理系统。
2、原理
二、sqoop的安装配置
1、下载
2、上传服务器
3、解压
4、配置
标准的apach项目文件 将模板配置文件拷贝一份
cp sqoop-env-template.sh sqoop-env.sh
修改配置文件
5.测试
bin/sqoop list-databases -connect jdbc:mysql://localhost:3306/ --username root --password root
出现错误,无驱动包
6、解决错误
需要上传MySQL的java驱动包
7、再次执行命令
bin/sqoop list-databases -connect jdbc:mysql://hadoop01:3306/ --username root --password Root123!
三、sqoop指令介绍
四、数据的导入
1、导入命令
bin/sqoop import -connect jdbc:mysql://hadoop01:3306/azkaban --username root --password Root123! --target-dir /azkaban/execution_logs --table execution_logs --num-mappers 1
2.启动hadoop
3.启动yarn
4、执行命令
在webUI上查看
五. Mysql表导入HDFS
1.数据准备
首先先新建一个目录
之后创建一个新的数据库
并且新建一个表格 并添加字段 插入数据
2.数据导入
将该表导入hdfs
bin/sqoop import --connect jdbc:mysql://hadoop01:3306/sqoop --username root --password Root123! --target-dir /sqoop/mysql_hdfs_append --table salary --num-mappers 1
在webUI上查看结果
六. Mysql表数据子集导入
bin/sqoop import --connect jdbc:mysql://hadoop01:3306/sqoop --username root --password Root123! --where "jobtittle=Java工程师" --target-dir /sqoop/where --table salary --num-mappers 1
在webUI上查看运行结果
上一篇:
JS实现多线程数据分片下载
下一篇:
运行官方byfn.sh跑通网络