1. 程式人生 > >14.Sqoop把數據從HDFS導出到mysql

14.Sqoop把數據從HDFS導出到mysql

inpu ont sha grant .com create 命令 fec hang

創建數據文件

技術分享圖片

1201,gopal,manager,50000,TP
1202,manisha,preader,50000,TP
1203,kalil,php dev,30000,AC
1204,prasanth,php dev,30000,AC
1205,kranthi,admin,20000,TP
1206,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 userdb Database changed mysql>

在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表的數據

技術分享圖片

14.Sqoop把數據從HDFS導出到mysql