14.Sqoop把数据从HDFS导出到mysql

创建数据文件

1201,gopal,manager,50000,TP1202,manisha,preader,50000,TP1203,kalil,php dev,30000,AC1204,prasanth,php dev,30000,AC1205,kranthi,admin,20000,TP1206,satish p,grp des,20000,GR

 

把数据文件上传到集群

 

 在HDFS上创建目录

hadoop fs -mkdir -p /user/hadoop/emp

 

 

 把数据文件上传到HDFS上

hadoop fs -put emp_data.txt /user/hadoop/emp

 

 

 

 

 登录Mysql

 

mysql> create database userdb;Query OK, 1 row affected (0.00 sec)mysql> grant all privileges on userdb.* to sqoop@% identified by sqoop;Query OK, 0 rows affected (0.15 sec)mysql> grant all privileges on userdb.* to sqoop@localhost identified by sqoop;Query OK, 0 rows affected (0.00 sec)mysql> grant all privileges on userdb.* to sqoop@node1 identified by sqoop;Query OK, 0 rows affected (0.00 sec)mysql> flush privileges;Query OK, 0 rows affected (0.01 sec)mysql> use userdbDatabase changedmysql> 

 

 

在mysql里创建一个表

 CREATE TABLE employee ( id INT NOT NULL PRIMARY KEY, name VARCHAR(20), deg VARCHAR(20), salary INT, dept VARCHAR(10));

 

 

 

现在需要从HDFS上把数据导入到mysql中对应的表

 执行命令

bin/sqoop export --connect jdbc:mysql://node1:3306/userdb \--username sqoop --password sqoop --table employee --export-dir /user/hadoop/emp/--input-fields-terminated-by ,

 

 

 

 

 查看Mysql表的数据

 

相关文章