Sqoop导入导出的几个例子

 
node2
Sqoop参数介绍_其他命令_导入导出

导入

例一:从DBMS到HDFS
1.node4下启动mysql
service mysqld start
mysql -u root -p
输入密码:123
 
2.node4下创建test数据库
create database test;
创建psn表

 
3.node2中创建sqoop_test,编辑sqoop1

  1. import
  2. --connect
  3. jdbc:mysql://node4/test
  4. --username
  5. root
  6. --password
  7. 123
  8. --as-textfile
  9. --columns
  10. id,name,msg
  11. --table
  12. psn
  13. --delete-target-dir
  14. --target-dir
  15. /sqoop/data
  16. -m
  17. 1
 
4.执行命令--从DBMS导入到HDFS
  1. sqoop --options-file sqoop1//选项使用脚本
sqoop --options-file sqoop1

 

 
 
 
 
例二:从DBMS到Hive
注意!
$CONDITIONS规定

--as-textfile  //以文本的方式进行存储

/sqoop/tmp先将数据导入hdfs的临时目录,再将数据导入hive的目录
 
1.node4下启动mysql
service mysqld start
mysql -u root -p
输入密码:123
 
2.node4下创建test数据库
create database test;
创建psn表

 
3.node2中创建sqoop_test,编辑sqoop2
-e,--query和--table两个选项是冲突的,因为一个是指定单表,一个是指定多表的导入;
--warehouse-dir指定导入到hive中的时候到底从哪个目录下面导入;这个选项和hive中的warehouse-dir
配置项很像;
--hive-home指定hive的安装目录,如果节点上面配置了环境变量,并且导入了需要的jar包,那么就不需要
指定了;
 
sqoop将关系型数据库中的数据导入到hive中去的话,首先需要将数据导入到hdfs上面,因此需要先指定
hdfs上面一个临时存储这些数据的目录,然后才会把hdfs上面的数据导入到hive中去;也就是首先使用mr
到hdfs上面,然后在创建hive的表;可以再打开一个终端,查看hive中的表创建的情况;创建的时候
首先在mysql通过查看表字段,然后在hive中创建;我们没有指定hive表存放在什么位置。这个位置是由
hive的配置文件指定的,需要在那个位置查看;
  1. import
  2. --connect
  3. jdbc:mysql://node4/test
  4. --username
  5. root
  6. --password
  7. 123
  8. --as-textfile
  9. --query
  10. 'select id, name, msg from psn where id like "1%" and $CONDITIONS'
  11. --delete-target-dir
  12. -target-dir
  13. /sqoop/tmp
  14. -m
  15. 1
  16. --hive-home
  17. /home/hive-1.2.1
  18. --hive-import
  19. --create-hive-table
  20. --hive-table
  21. t_test
 
4.执行命令--从DBMS导入到Hive
先启动hive服务端node2:    hive --service metastore
再启动hive客户端node1:

    hive
sqoop --options-file sqoop2

node1查看表t_test是否生成

 

导出

例三:从HDFS到DBMS

指定HDFS中数据对应的目录
 
1.node4下启动mysql
service mysqld start
mysql -u root -p
输入密码:123
 
2.node4下创建test数据库
create database test;
创建h_psn表

 
 
3.node2中创建sqoop_test,编辑sqoop3
  1. export
  2. --connect
  3. jdbc:mysql://node4/test
  4. --username
  5. root
  6. --password
  7. 123
  8. -m
  9. 1
  10. --columns
  11. id,name,msg
  12. --export-dir
  13. /sqoop/data
  14. --table
  15. h_psn
4.执行sqoop命令

查看mysql中的表,看数据是否导入

 
 
 
例四:从Hive到DBMS

 
 
 

 
 

附件列表

Sqoop导入导出的几个例子的更多相关文章

  1. sqoop导入导出对mysql再带数据库test能跑通用户自己建立的数据库则不行

    sqoop对hdfs导入导出怎么操作这里我就不多说了 现在说下sqoop导入导出时针对mysql后面用户手动创建的数据库导入到处遇到的问题 首先我这里搭建的是3节点集群 master slave1 s ...

  2. sqoop导入导出

    sqoop产生背景 什么是sqoop sqoop的优势 sqoop1与sqoop2的比较 为什么选择sqoop1 sqoop在hadoop生态体系中的位置 sqoop基本架构 sqoop import ...

  3. Sqooop- 使用Sqoop进行数据的导入导出

    Sqoop是Apache旗下的一个开源框架,专门用来做数据的导入和导出. 官网:https://sqoop.apache.org/ Sqoop的安装非常简单,只需要把下载下来的tar包解压设置两个环境 ...

  4. Sqoop -- 用于Hadoop与关系数据库间数据导入导出工作的工具

    Sqoop是一款开源的工具,主要用于在Hadoop相关存储(HDFS.Hive.HBase)与传统关系数据库(MySql.Oracle等)间进行数据传递工作.Sqoop最早是作为Hadoop的一个第三 ...

  5. mysql数据与Hadoop之间导入导出之Sqoop实例

    前面介绍了sqoop1.4.6的 如何将mysql数据导入Hadoop之Sqoop安装,下面就介绍两者间的数据互通的简单使用命令. 显示mysql数据库的信息,一般sqoop安装测试用 sqoop l ...

  6. 如何利用sqoop将hive数据导入导出数据到mysql

    运行环境  centos 5.6   hadoop  hive sqoop是让hadoop技术支持的clouder公司开发的一个在关系数据库和hdfs,hive之间数据导入导出的一个工具. 上海尚学堂 ...

  7. 利用sqoop将hive数据导入导出数据到mysql

    一.导入导出数据库常用命令语句 1)列出mysql数据库中的所有数据库命令  #  sqoop list-databases --connect jdbc:mysql://localhost:3306 ...

  8. sqoop与hbase导入导出数据

    环境:sqoop1.4.6+hadoop2.6+hbase1.1+mysql5.7 说明: 1.文中的导入导出的表结构借鉴了网上的某篇博客 2.mysql导入hbase可以直接通过sqoop进行 3. ...

  9. 从零自学Hadoop(16):Hive数据导入导出,集群数据迁移上

    阅读目录 序 导入文件到Hive 将其他表的查询结果导入表 动态分区插入 将SQL语句的值插入到表中 模拟数据文件下载 系列索引 本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并 ...

随机推荐

  1. Linux第八讲随笔 -tar / 系统启动流程

    linux 第八讲1.tar 参考 作用:压缩和解压文件.tar本身不具有压缩功能.他是调用压缩功能实现的. 语法:tar[必要参数][选择参数][文件] 参数:必要参数有如下: -A 新增压缩文件到 ...

  2. 初学ssm框架的信息

    ssm框架,就是Spring ,SpringMVC ,mybstis 的简称,我们是从mybstis 开始学起的,mybatis的作用作为一个连接数据库的框架,可以很好配置连接好数据库, 有mybat ...

  3. Java 并发编程:volatile的使用及其原理

    Java并发编程系列: Java 并发编程:核心理论 Java并发编程:Synchronized及其实现原理 Java并发编程:Synchronized底层优化(轻量级锁.偏向锁) Java 并发编程 ...

  4. haslayout知多少

    我们都知道浏览器有bug,而IE的bug似乎比大多数浏览器都多.IE的表现与其他浏览器不同的原因之一就是,显示引擎使用一个称为布局(layout)的内部概念.   因为布局是专门针对显示引擎内部工作方 ...

  5. Java的注释和Javadoc在eclipse生成的方法 – Break易站

    本文内容来自:Java的注释和Javadoc在eclipse生成的方法 – Break易站 1.  Java的注释 Java里有两种注释风格.下面这个写法是非常常见的 1 2 3 4 /*This i ...

  6. vue2.0 微信oauth认证的正确调用位置

    运行在微信端的项目,很重要的环节是oauth认证:那在vue项目中,在何时何地调用oauth认证最合适呢? 经过观察,在项目启动过程中,会执行main.js文件:所以我将认证放在main.js中操作: ...

  7. git和github新手安装使用教程(三步入门)

    git和github新手安装使用教程(三步入门) 对于新手来说,每次更换设备时,github的安装和配置都会耗费大量时间.主要原因是每次安装时都只关心了[怎么做],而忘记了记住[为什么].本文从操作的 ...

  8. 第一章 Linux系统概述

    linux是真正的多用户.多任务操作系统,他继承了UNIX系统的主要特征,具有强大的信息处理功能,特别在Internet和Intranet的应用中占有明显优势. 1.1计算机基础知识 计算机分为硬件和 ...

  9. MyEclipse过期后怎么破解

    方法一:写一个程序生成Subscriptioncode import java.io.*; public class MyEclipseGen { private static final Strin ...

  10. linux搭建SS服务

    基本准备: 购买主机:www.virmach.com LINUX系统操作经验:vim , apt-get 等命令的使用 putty.exe连接ssh工具的使用 开始 使用putty连接上去,并输入密码 ...