应用Sqoop工具,从MySQL数据库导入记录到HDFS, 从MySQL数据库导入记录到Hive,从HDFS导出数据到MySQL数据库

一、从MySQL数据库导入记录到HDFS

1.Mysqls数据库创建数据库sqoop01

mysql> create database sqoop01;
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| hive               |
| mysql              |
| sqoop01            |
| test               |
+--------------------+
5 rows in set (0.00 sec)

2.创建表

mysql> use sqoop01;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
create table t_user(id int, name varchar(20), age int);
insert into t_user values(1, 'David', 21)
insert into t_user values(2, 'Tom', 20)
insert into t_user values(3, 'Amy', 19)
mysql> select * from t_user;
+------+-------+------+
| id   | name  | age  |
+------+-------+------+
|    1 | David |   21 |
|    2 | Tom   |   20 |
|    3 | Amy   |   19 |
+------+-------+------+
3 rows in set (0.02 sec)

3.执行以下命令

sqoop import --connect jdbc:mysql://hadoop/sqoop01 --username root --password root --table t_user --target-dir hdfs://hadoop:8020/sqoop1 -m 1

执行结果如图在这里插入图片描述

HDFS如图所示:

在这里插入图片描述

在这里插入图片描述

二、从MySQL数据库导入记录到Hive

执行以下命令

sqoop import --connect jdbc:mysql://hadoop/sqoop01 --username root --password root --table t_user --target-dir hdfs://hadoop:8020/sqoop2 --hive-import --hive-overwrite --create-hive-table --hive-table t_user -m 1

执行结果如图:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-IsraYmA9-1590071208814)()]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CtKpPAlt-1590071208815)()]

三、从HDFS导出数据到MySQL数据库

1.需要提前创建数据库下的表export_user

create table export_user(id int, name varchar(20), age int);

2.执行命令

sqoop export --connect "jdbc:mysql://hadoop/sqoop01" --username root --password root --table export_user -m 1 --export-dir /sqoop1

3.结果如图

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gpm7DL87-1590071208816)()]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ilEQRKQB-1590071208817)()]

猜你喜欢

转载自blog.csdn.net/weixin_44322234/article/details/106269124