jdbc驱动:mysql-connector-java-5.1.46.jar
把jdbc驱动包放到sqoop的lib目录下。
cd sqoop-1.4.7.bin__hadoop-2.6.0/bin/ 进行ls
执行 ./sqoop-help或者./sqoop help
看到有红色框里的东西代表安装成功了。
从HDFS导出数据到mysql:
首先在mysql创建与HDFS数据的字段相对应的表
./sqoop export \
--connect jdbc:mysql://master:3306/hive_sqoop \
--username root \
--password 123456 \
--table t_extract_web_log \
--export-dir /t_extract_web_log/000000_0 \
--input-fields-terminated-by '\001'
//hive_data数据库名 \换行
备注:数据虽然在hive里面是\t分隔符,但是经过hive导出到HDFS:
hive> from t_extract_web_log
> insert overwrite directory '/t_web_log'
> select *;
分隔符变成了 \001
从mysql导入数据到HDFS:
./sqoop import \
--connect jdbc:mysql://master:3306/hive_sqoop \
--username root \
--password 123456 \
--table t_extract_web_log \
--target-dir /t_extract_web_log \
--m 1
备注:注意:/t_extract_web_log必须不存在,否则报错
--m 1表示只有一个mapTask,默认4个
每次执行的时候会检测文件是否存在