Sqoop拷贝MySQL数据表到HDFS存储

匿名 (未验证) 提交于 2019-12-02 22:06:11
  1. 下载地址, 这里选择1.4.7版本sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz
    http://archive.apache.org/dist/sqoop/1.4.7/
  2. 传输到linux中,解压缩
  3. 修改系统环境变量/etc/profile, 添加sqoop/bin, 同时确保export HADOOP_HOME
  4. 进入sqoop/conf目录, 修改如下文件
    cp sqoop-env-template.sh sqoop-env.sh
  5. 可以修改sqoop-env.sh添加相关目录所在位置, 包括hadoop,mapreduce,hive,hdfs,zookeeper
  6. 不修改sqoop-env.sh会warning, 部分功能无法使用
  7. 拷贝mysql的jar包到sqoop/lib中, 实现jdbc连接mysql时需要用到
    https://download.csdn.net/download/wxfghy/10476946
  8. sqoop命令测试是否成功, 无ERROR则成功,WARING不影响使用
  1. 确保mysql可以远程连接, 防火墙等已关闭或开端口, hadoop已启动, hdfs可访问
  2. 确保hdfs上不存在目标文件夹, sqoop会自动生成文件夹, 若已存在则报错
  3. 命令如下, 参数自行修改, mysql所在IP为ghys3, 用户名密码为root, Mysql数据表emp, hdfs目录为/mydb/emp
sqoop import -m 1 --connect jdbc:mysql://ghys3:3306/mydb  --username root --password root --table emp --target-dir /mydb/emp
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!