加入收藏 | 设为首页 | 会员中心 | 我要投稿 武汉站长网 (https://www.027zz.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

Hadoop大数据实战——从HDFS导出数据到MySQL

发布时间:2022-10-16 00:00:33 所属栏目:MySql教程 来源:转载
导读: Sqoop是一款“Hadoop和关系数据库服务器之间传送数据”的工具MySQL 导出数据,即可以将一个关系型数据库中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中。
本文主要

Sqoop是一款“Hadoop和关系数据库服务器之间传送数据”的工具MySQL 导出数据,即可以将一个关系型数据库中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中。

本文主要介绍如何使用Sqoop工具从HDFS导出数据到关系数据库(MySQL)中。

案例准备

本系统的软件开发及运行环境具体如下:

实现过程

Sqoop导出用到的命令为export,下面通过一个例子来讲解如何使用Sqoop将Hadoop数据导出到MySQL,步骤如下。

(1)创建stu文件,分隔符为逗号,内容如图1所示。

MySQL 导出数据_mysql导出存储过程_mysql导出查询数据

图1 stu文件内容

(2)将stu文件复制到HDFS上的/exportdata目录下。

hadoop fs -mkdir /expotdata

hadoop fs -put /home/mingri/stu /exportdata/stu

hadoop fs -cat /exportdata/stu

执行结果如图2所示。

MySQL 导出数据_mysql导出查询数据_mysql导出存储过程

图2 将stu文件复制到HDFS上的/expotdata目录下

(3)将stu文件中的数据导出到MySQL数据库中的student表中。

bin/sqoopexport --connect jdbc:mysql://localhost:3306/testDB -username root -password123456 -table student -export-dir /exportdata --input-fields-terminated-by ','

与import导入命令相比,export导出命令与之类似,其中“--input-fields-terminated-by ','”用于指定数据文件中的分隔符。需要注意,数据文件中的分隔符必须和要导出的数据表中的分隔符一致,才能正确的导出数据。

执行结果如图3所示。

mysql导出存储过程_MySQL 导出数据_mysql导出查询数据

图3 将stu文件中的数据导出到MySQL数据库中的student表中

(4)在MySQL数据库中,查看student表中数据。

use testDB;

select * from student;

执行结果如图4所示。

MySQL 导出数据_mysql导出查询数据_mysql导出存储过程

图4 查看student表中数据

从图4中可以看出,已经成功的将stu文件中的数据导出到MySQL数据库的student表中了。

(编辑:武汉站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!