
正文
14.Sqoop把数据从HDFS导出到mysql
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
创建数据文件

,gopal,manager,,TP
,manisha,preader,,TP
,kalil,php dev,,AC
,prasanth,php dev,,AC
,kranthi,admin,,TP
,satish p,grp des,,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, row affected (0.00 sec)mysql> grant all privileges on userdb.* to 'sqoop'@'%' identified by 'sqoop';
Query OK, rows affected (0.15 sec)mysql> grant all privileges on userdb.* to 'sqoop'@'localhost' identified by 'sqoop';
Query OK, rows affected (0.00 sec)mysql> grant all privileges on userdb.* to 'sqoop'@'node1' identified by 'sqoop';
Query OK, rows affected (0.00 sec)mysql> flush privileges;
Query OK, rows affected (0.01 sec)mysql> use userdb
Database changed
mysql>
在mysql里创建一个表
CREATE TABLE employee (
id INT NOT NULL PRIMARY KEY,
name VARCHAR(),
deg VARCHAR(),
salary INT,
dept VARCHAR());

现在需要从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表的数据







