1.准备
拷贝驱动 cp mysql** /root/apps/sqoop/lib
修改配置文件 vi sqoop-env.sh
验证 bin/sqoop help
2.尝试连接
bin/sqoop list-databases \
--connect jdbc:mysql://192.168.159.10:3306/ \
--username root --password root
3.导入(从MySQL导入别处)
bin/sqoop import
--connect jdbc:mysql://192.168.159.10:3306/** \
--username ** --password ** \
--table test* \
--target-dir /user/new \ 需要确保有user目录,没有new目录,否则报错
--delete-target-dir \
--num-mappers 1 \ 可以简写为-m
--fields-terminated-by "\t" \
--query 'select name,sex from common where id <=1 and $CONDITIONS;' 查询导入
--columns name,sex 导入指定列
--where "id>1" 使用关键词
--hive-import 指定导入import中
4.导出(从别处到MySQL)
bin/sqoop export
--connect jdbc:mysql://192.168.159.10:3306/test \
--username root --password root \
--table biao \
--target-dir /user/new \
--num-mappers 1 \
--input-fields-terminated-by "\t"
5.脚本打包
需要创建目录,在其下写脚本
mkdir opt
vi opt/job_HDFS.opt
export
--connect jdbc:mysql://192.168.159.10:3306/databases \
--username root --password root \
--table test --num-mappers 1 \
--export-dir /user/hive/wasehouse/start_hive \
--input-fields-terminated-by "\t"
bin/sqoop --options-file opt/job_HDFS.opt