Sqoop安装配置及数据导入导出

前置条件

已经成功安装配置Hadoop和Mysql数据库服务器,如果将数据导入或从Hbase导出,还应该已经成功安装配置Hbase。

下载sqoop和Mysql的JDBC驱动

sqoop-1.2.0-CDH3B4.tar.gz :http://archive.cloudera.com/cdh/3/sqoop-1.2.0-CDH3B4.tar.gz

mysql-connector-java-5.1.28

安装sqoop

[[email protected] ~]$ tar -zxvf sqoop-1.2.0-CDH3B4.tar.gz

配置环境变量

拷贝Hadoop核心包和MYSQL驱动包到sqooplib目录

[[email protected] ~]$ cp hadoop-1.1.2/hadoop-core-1.1.2.jar sqoop-1.2.0-CDH3B4/lib/

[[email protected] ~]$ cp  mysql-connector-java-5.1.28-bin.jar sqoop-1.2.0-CDH3B4/lib/

配置sqoop-1.2.0-CDH3B4/bin/configure-sqoop文件

注释掉hbase和zookeeper检查(除非准备使用HABASE等HADOOP组件)

启动hadoop集群

启动mysql

创建sqoop用户

建立sqoop库,test表,并构造测试数据

测试sqoop连接

[[email protected] ~]$ sqoop list-databases --connect jdbc:mysql://10.120.10.11:3306/ --username sqoop --password sqoop

列出mysql中所有数据库的名称

从mysql导入到hdfs中

sqoop ##sqoop命令

import ##表示导入

--connect jdbc:mysql://ip:3306/sqoop ##告诉jdbc,连接mysql的url

--username sqoop ##连接mysql的用户名

--password sqoop ##连接mysql的密码

--table test ##从mysql导出的表名称

--fields-terminated-by ‘\t‘ ##指定输出文件中的行的字段分隔符

-m 1 ##复制过程使用1个map作业

[[email protected] ~]$ sqoop import --connect jdbc:mysql://10.120.10.11:3306/sqoop --username sqoop --password sqoop --table test --fields-terminated-by ‘:‘ -m 1

Hadoop中查看导入结果

从hdfs导出到mysql中

sqoop

export ##表示数据从hive复制到mysql中

--connect jdbc:mysql://ip:3306/sqoop

--username sqoop

--password sqoop

--table test ##mysql中的表,即将被导入的表名称

--export-dir ‘/user/root/aa/part-m-00000‘ ##hive中被导出的文件

--fields-terminated-by ‘\t‘ ##hive中被导出的文件字段的分隔符

[[email protected] ~]$ sqoop export --connect jdbc:mysql://10.120.10.11:3306/sqoop --username sqoop --password sqoop --table test --export-dir ‘/user/hadoop/test/part-m-00000‘ --fields-terminated-by ‘:‘ -m 1

Mysql中查看导出结果

从Mysql导入到Hbase中

参数说明:

Ø hbase_tablename指定要导成hbase的表名

Ø key_col_name指定mysql数据库表中哪一列作为hbase新表的rowkey

Ø col_fam_name是除rowkey之外的所有列的列族名

[[email protected] ~]$ sqoop import --connect jdbc:mysql://10.120.10.11:3306/sqoop --username sqoop --password sqoop --table test --hbase-create-table --hbase-table mysql_sqoop_test --column-family info --hbase-row-key id -m 1

在Hbase中查看结果

转自:http://www.blogjava.net/redhatlinux/archive/2014/05/31/414291.html

时间: 2024-10-07 01:35:22

Sqoop安装配置及数据导入导出的相关文章

MySQL存储引擎 SQL数据导入/导出 操作表记录 查询及匹配条件

MySQL存储引擎的配置 SQL数据导入/导出 操作表记录 查询及匹配条件 1 MySQL存储引擎的配置1.1 问题 本案例要求MySQL数据存储引擎的使用,完成以下任务操作: 可用的存储引擎类型 查看默认存储类型 更改表的存储引擎 1.2 步骤 实现此案例需要按照如下步骤进行. 步骤一:查看存储引擎信息 登入MySQL服务器,查看当前支持哪些存储引擎. 使用mysql命令连接,以root用户登入: [[email protected] ~]# mysql -u root –p Enter pa

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

运行环境  centos 5.6   hadoop  hive sqoop是让hadoop技术支持的clouder公司开发的一个在关系数据库和hdfs,hive之间数据导入导出的一个工具. 上海尚学堂hadoop大数据培训组原创,陆续有hadoop大数据技术相关文章奉上,请多关注! 在使用过程中可能遇到的问题: sqoop依赖zookeeper,所以必须配置ZOOKEEPER_HOME到环境变量中. sqoop-1.2.0-CDH3B4依赖hadoop-core-0.20.2-CDH3B4.ja

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

转:https://blog.csdn.net/qx12306/article/details/67014096 Sqoop是一款开源的工具,主要用于在Hadoop相关存储(HDFS.Hive.HBase)与传统关系数据库(MySql.Oracle等)间进行数据传递工作.Sqoop最早是作为Hadoop的一个第三方模块存在,后来被独立成为了一个Apache项目.除了关系数据库外,对于某些NoSQL数据库,Sqoop也提供了连接器. 一.Sqoop基础知识 Sqoop项目开始于2009年,可以在H

Linux下mongodb安装及数据导入导出教程

Linux下mongodb安装及数据导入导出教程 #查看linux发行版本 cat /etc/issue #查看linux内核版本号 uname -r 一.Linux下mongodb安装的一般步骤 1.到mongodb的官网(https://www.mongodb.org/downloads) 下载相应你系统的安装包,拷贝(能够用ftp工具如winscp)到你的linux系统上面. 2.解压相应的安装包 命令例如以下:tar zxvf mongodb-linux-x86_64-3.0.4.tgz

HData——ETL 数据导入/导出工具

HData是一个异构的ETL数据导入/导出工具,致力于使用一个工具解决不同数据源(JDBC.Hive.HDFS.HBase.MongoDB.FTP.Http.CSV.Excel.Kafka等)之间数据交换的问题.HData在设计上同时参考了开源的Sqoop.DataX,却与之有不同的实现.HData采用“框架+插件”的结构,具有较好的扩展性,框架相当于数据缓冲区,插件则为访问不同的数据源提供实现. [HData特性] 1.异构数据源之间高速数据传输: 2.跨平台独立运行: 3.数据传输过程全内存

Oracle数据导入导出命令

IMP 和EXP命令 Oracle数据导入导出imp/exp就相当于oracle数据还原与备份.exp命令可以把数据从远程数据库服务器导出到本地的dmp文件,imp命令可以把dmp文件从本地导入到远处的数据库服务器中. 利用这个功能可以构建两个相同的数据库,一个用来测试,一个用来正式使用. 执行环境:可以在SQLPLUS.EXE或者DOS(命令行)中执行,DOS中可以执行时由于在oracle 8i中安装目录\ora81\BIN被设置为全局路径,该目录下有EXP.EXE与IMP.EXE文件被用来执

MySQL多线程数据导入导出工具Mydumper

http://afei2.sinaapp.com/?p=456 今天在线上使用mysqldump将数据表从一个库导入到另外一个库,结果速度特别慢,印象中有个多线程的数据导入导出工具Mydumper,于是简单的调查和测试一下. 下午导数据的过程中,这个表是没有更新的,因此不需要确保多个数据之间的一致性,就简单的写个shell脚本启动多个mysqldumper来导数据,这样有几个问题: 需要处理表数据大小不均匀的问题,有的会很快结束,有的会比较慢. 如果需要保证多个导出之间的一致性时,则无法保证.

redis数据导入导出

在2017年,项目上的redis集群需要从2.8版本更换为3.2版本,此时涉及到redis数据key的迁移,经百度.×××,发现有三种方法可以实现1.第三方工具redis-dump.redis-load实现2.通过aof机制导入导出,需要开启aof功能3.通过rdb存储机制迁移数据,此方法最为简单,直接dump $key.restore $key即可 此篇主要介绍第一种方式,redis-dump.redis-load实现redis的数据导入导出,直接进入主题 redis-dump,要求ruby版

Elasticsearchdump 数据导入/导出

一.安装过程 Elasticsearchdump 仓库地址,详细使用情况 当前工具主要是用来对ES中的数据进行数据导入/导出,以及对数据迁移相关,使用elasticdump工具需要使用到npm,所以需要安装相关的依赖 目前使用到的ES版本是7.x 安装NODE NODE和NPM安装链接详细文档 安装命令如下: $ wget https://nodejs.org/dist/v10.15.0/node-v10.15.0-linux-x64.tar.xz $ tar -xf node-v10.15.0