zoukankan      html  css  js  c++  java
  • 大数据学习之十五——sqoop的安装和使用

    1.概念了解

    sqoop主要用于hadoop与传统的数据库(mysql、postgresql...)间进行数据的传递,可以将一个关系型数据库(例如:MYSQL,Oracle,Postgrep等)中的数据导到hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中。

    2.sqoop的安装

    (1)将压缩包sqoop-1.4.6.bin__hadoop-2.0.4-alpha.jar放在Linux的路径下,并修改配置文件/etc/profile

    export SQOOP_HOME=该压缩包所在路径

    export PATH=$PATH:$SQOOP_HOME/bin

    (2)更新环境变量的值

    source /etc/profile

    检验是否安装成功:输入sqoop ,显示提示说明安装成功。

    (3)下载mysql的连接jar包,放在sqoop的家目录的lib目录下。

    安装后验证:

    sqoop list-databases --connect jdbc:mysql://本地IP:3306/ --username root --password root123

    若显示数据库,说明安装完成。

    3.sqoop的使用

    sqoop支持很多对数据库的操作,比如查看数据库,查看数据表,对数据的导入导出,导入所有的表。当然用的最多的还是export和import两个指令对数据库和hadoop数据进行导出导入。

    (1)利用sqoop数据从mysql中导入到hdfs
     现在数据库中建立一个employee的表,字段有id,name,age,place,entry_time,position
    ,然后再填充一些数据。

    运行命令格式:sqoop import --connect jdbc:mysql://本地IP:3306/数据库name   --username root --password 123456 --table 表名--target-dir  hdfs中的路径  -m 1

    sqoop import --connect jdbc:mysql://master:3306/liu  --username root --password 123456 --table employees --target-dir /input/sqoop/sqoop_employees  -m 1

    需要注意的是:要导入到hdfs中的目录不能提前存在。

    (2)将数据从hdfs导出到mysql中

    将hdfs中的数据/input/f.txt导入到数据库中:

    执行命令格式:

    #sqoop export --connect jdbc:mysql://本地IP地址:3306/数据库名字 --username root --table 表格的名字 --export-dir 'hdfs中的路径' --fields-terminated-by ','

    #sqoop export --connect jdbc:mysql://192.168.59.128:3306/db01 --username root --password  linux  --table table03 --export-dir '/input/f.txt' --fields-terminated-by ','

    其中数据库db01,table03都是提前存在的,并且table03的属性是对应hdfs中的数据的。

  • 相关阅读:
    没有生产管理,只会生产的企业即将被淘汰
    实施一套MES系统需要多少钱?
    MES助力日立电梯提升精细化管理水平
    数据定义
    (CVE-2017-16995)Ubuntu内核提权
    (CVE-2017-7494)Linux Samba远程代码执行
    (CVE-2019-13272)Linux本地提权
    vulnhub 之 dc6
    vulnhub 之 dc 5
    vulnhub 之 dc4
  • 原文地址:https://www.cnblogs.com/m-study/p/8401023.html
Copyright © 2011-2022 走看看