zoukankan      html  css  js  c++  java
  • sqoop

    测试 Sqoop 是否能够成功连接数据库
    sqoop list-databases --connect jdbc:mysql//k200:3306/ --username root --password root

    create database jinghang;

    create table student(
    id int(4) primary key not null auto_increment,
    name varchar(255),
    gender varchar(255));

    insert into student(name, gender) values('banzhang', 'Male');
    insert into student(name, gender) values('banzhangxifu', 'FeMale');
    ---------------------------------------------------------------------------------
    导入数据:
    1-全部导入
    sqoop import
    --connect jdbc:mysql://k200:3306/test
    --username root
    --password root
    --target-dir /user/xuetong/student
    --delete-target-dir
    --num-mappers 1
    --fields-terminated-by " "
    --table student
    2:查询导入
    ###
    --query 'select name,gender from student where id <=1 and $CONDITIONS; '

    注意:must contain '$CONDITIONS' in WHERE clause.
    注意:如果 query 后使用的是双引号,则$CONDITIONS 前必须加转移符,防止 shell
    识别为自己的变量。
    注意:--query 选项,不能同时与--table 选项使用
    3:导入指定列
    ***
    --columns id,gender
    --table student
    ***
    --table student
    --where "id=1"
    -------------------------------------------------------------------------------------
    Mysql---导入到Hive
    sqoop import
    --connect jdbc:mysql://k200:3306/test
    --username root
    --password root
    --table student
    --delete-target-dir
    --num-mappers 1
    --hive-import
    --fields-terminated-by " "
    --hive-overwrite
    --hive-table student_hive

    注意:该过程分为两步,第一步将数据导入到 HDFS,第二步将导入到 HDFS 的数据迁移到 Hive 仓库
    注意:第一步默认的临时目录是/user/root/表名

    --------------------------------------------------------------------------------------
    Hive---导入到MySQL
    sqoop export
    --connect jdbc:mysql://k200:3306/test
    --username root
    --password root
    --table emp
    --num-mappers 1
    --export-dir /user/hive/warehouse/hi_1.db/emp
    --input-fields-terminated-by " "
    注意:Mysql 中如果表不存在,不会自动创建

    create table emp (
    empno int(23),
    ename varchar(233),
    job varchar(233),
    mgr int(23),
    hiredate varchar(233),
    sal double,
    comm double,
    deptno int(23));


    脚本文件:
    sqoop --options-file opt/job_HDFS2RDBMS.opt

    vim job_HDFS2RDBMS.opt

    export
    --connect
    jdbc:mysql://k200:3306/test
    --username
    root
    --password
    root
    --table
    location
    --num-mappers
    1
    --export-dir
    /user/hive/warehouse/location
    --input-fields-terminated-by
    " "
    --------------------------------------------------------------------------------------------
    create table location(
    loc int(23),
    loc_name varchar(233)
    );

    回首间---我错过了那片星海
  • 相关阅读:
    Vue
    多线程
    多进程进阶
    CentOS7中安装MySQL
    socket
    回顾
    Hibernate学习一:Hebinate入门以及一些小问题
    struts2学习二:Tomcat的部署目录和访问路径问题
    struts2学习一:hello struts2及struts2环境配置中遇到的问题
    Scanner几个问题与正则简介
  • 原文地址:https://www.cnblogs.com/Vowzhou/p/10577743.html
Copyright © 2011-2022 走看看