sqoop的安装与常用抽数操作(代码片段)

author author     2022-11-02     750

关键词:

  • sqoop 简介处理
  • sqoop 环境配置处理
  • sqoop 数据导入导出处理

一: sqoop 简介处理

- 1. Sqoop是一个用来将Hadoop和关系型数据库中的数据相互转移的工具,可以将一个关系型数据库(例如 : MySQL ,Oracle ,Postgres等)中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中。

- 2. Sqoop中一大亮点就是可以通过hadoop的mapreduce把数据从关系型数据库中导入数据到HDFS,可以将hive 的数据,hdfs 上面的数据进行 提取的到关系型数据当中。 反之亦可操作。

二:sqoop 安装与配置处理:

 环境需求: 安装好的hadoop环境与hive 环境已经配置。

2.1 配置单节点的zookeeper 环境

tar -zxvf zookeeper-3.4.5-cdh5.3.6.tar.gz 
mv zookeeper-3.4.5-cdh5.3.6 yangyang/zookeeper
cd yangyang/zookeeper/conf
cp -p zoo_sample.cfg zoo.cfg

2.2 给定zookeeper 的Datadir 目录:

# the directory where the snapshot is stored.
# do not use /tmp for storage, /tmp here is just 
# example sakes.
#dataDir=/tmp/zookeeper
<!--给定dataDir 目录 -->
dataDir=/home/hadoop/yangyang/zookeeper/data
# the port at which the clients will connect
echo "1" > /home/hadoop/yangyang/zookeeper/myid

2.3 启动zookeeper服务

  cd /home/hadoop/yangyang/zookeer/sbin/
  ./zkServer.sh start

技术分享图片

 tar -zxvf sqoop-1.4.5-cdh5.3.6.tar.gz
 mv sqoop-1.4.5-cdh5.3.6 yangyang/sqoop
 cp -p mysql-connector-java-5.1.27-bin.jar /home/hadoop/yangyang/sqoop/lib/
 cd yangyang/sqoop/conf
 cp -p sqoop-env-template.sh sqoop-env.sh

2.4 配置sqoop环境

vim sqoop-env.sh

#Set path to where bin/hadoop is available
<!--配置hadoop目录-->
export HADOOP_COMMON_HOME=/home/hadoop/yangyang/hadoop

#Set path to where hadoop-*-core.jar is available
<!--配置hadoop的mapreduce目录-->
export HADOOP_MAPRED_HOME=/home/hadoop/yangyang/hadoop
<!--配置hbase 目录>
#set the path to where bin/hbase is available
#export HBASE_HOME=

#Set the path to where bin/hive is available
<!--配置hive的目录-->
export HIVE_HOME=/home/hadoop/yangyang/hive
<!--配置zookeeper 的目录处理>
#Set the path for where zookeper config dir is
export ZOOCFGDIR=/home/hadoop/yangyang/zookeeper/conf

二:sqoop 的环境测试处理

2.1 在mysql 的环境下创建数据库,并创建表处理

mysql -uroot -p123456
create database yangyang;
use yangyang;

创建一个my_user表:
CREATE TABLE `my_user` (
  `id` tinyint(4) NOT NULL AUTO_INCREMENT,
  `account` varchar(255) DEFAULT NULL,
  `passwd` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`)
);
插入数据:
INSERT INTO `my_user` VALUES (‘1‘, ‘admin‘, ‘admin‘);
INSERT INTO `my_user` VALUES (‘2‘, ‘pu‘, ‘12345‘);
INSERT INTO `my_user` VALUES (‘3‘, ‘system‘, ‘system‘);
INSERT INTO `my_user` VALUES (‘4‘, ‘zxh‘, ‘zxh‘);
INSERT INTO `my_user` VALUES (‘5‘, ‘test‘, ‘test‘);
INSERT INTO `my_user` VALUES (‘6‘, ‘pudong‘, ‘pudong‘);
INSERT INTO `my_user` VALUES (‘7‘, ‘qiqi‘, ‘qiqi‘);

三: 将mysql的数据表导入到hdfs 上面:

3.1 sqoop 导入不指定目录:

bin/sqoop import --connect jdbc:mysql://namenode01.hadoop.com:3306/yangyang --username root --password 123456 --table my_user
导出的路径在hdfs 上面的目录是
/usr/hadoop/my_user/
注意:
不指定导入目录,默认情况是导入到hdfs上面用户家目录下面。
默认导入到HDFS里面,分隔符是,

3.2 导入带目录路径:

bin/sqoop import --connect jdbc:mysql://namenode01.hadoop.com:3306/yangyang --username root --password 123456 --table my_user --target-dir /db_0521/ -m 1 --delete-target-dir --fields-terminated-by ‘\t‘ --direct    

技术分享图片
技术分享图片

3.3 增量导入:

bin/sqoop import --connect jdbc:mysql://namenode01.hadoop.com:3306/yangyang --username root --password 123456 --table my_user --target-dir /db_0521/ -m 1 --fields-terminated-by ‘\t‘ --direct --check-column id --incremental append --last-value 4

技术分享图片
技术分享图片

3.4 从mysql 导入hive 当中:

bin/sqoop import --connect jdbc:mysql://namenode01.hadoop.com:3306/yangyang --username root --password 123456 --table my_user --delete-target-dir --hive-import --hive-database yangyang --hive-table mysql2hive --fields-terminated-by ‘\t‘ 

技术分享图片
技术分享图片
技术分享图片

3.5 从hdfs 当中导出mysql 当中:

新建一张空表:
create table hdfs2mysql like my_user;
导出命令
bin/sqoop export --connect jdbc:mysql://namenode01.hadoop.com:3306/yangyang --username root --password 123456 --table hdfs2mysql --export-dir /user/hive/warehouse/yangyang.db/mysql2hive --input-fields-terminated-by ‘\t‘

技术分享图片
技术分享图片

从hive 当中导出到mysql 当中:
注意:其实就是从HDFS导入到RDBMS
新建一张空表:
create table hive2mysql like my_user;
导出命令:
bin/sqoop export --connect jdbc:mysql://namenode01.hadoop.com:3306/yangyang --username root --password 123456 --table hive2mysql --export-dir /user/hive/warehouse/yangyang.db/mysql2hive --input-fields-terminated-by ‘\t‘

技术分享图片
技术分享图片

常用sqoop操作(代码片段)

1.关系型数据库到hivesqoopimport--connectjdbc:mysql://localhost:3306/datahouse--usernamedatahs--passworddatahs2015--tablebase_dorm--hive-tablebase_dorm--hive-importsqoopimport--connectjdbc:mysql://localhost:3 查看详情

sqoop快速上手(代码片段)

...Sqoop简介二、Sqoop下载三、Sqoop基础使用3.1前置软件3.2Sqoop安装3.3Sqoop基础使用1、查看Sqoop的帮助信息2、单独连接数据库3、导入数据4、导出数据四、详细参数补充**1常用命令列举****2命令&参数详解****2. 查看详情

大数据之非常详细sqoop安装和基本操作(代码片段)

大数据大数据之非常详细Sqoop安装和基本操作目录大数据Sqoop1、上传解压2、配置环境变量配置sqoop环境变量配置sqoop-env.sh3、加入mysql的jdbc驱动包4、验证验证是否安装成功验证启动5、导入mysql表数据到HDFS6、导出HDFS数据到mysql总结... 查看详情

sqoop安装与简单实用(代码片段)

一,sqoop安装    1.解压源码包2.配置环境变量3.在bin目录下的  /bin/configsqoop注释掉check报错信息4.配置conf目录下  /conf/sqoop-env.sh配置hadoop和hive家目录5.导入依赖的jar包至lib目录下  mysql-connector-java-5.1.46-bin.jar/share/hadoop/... 查看详情

sqoop常用模板案例整理(代码片段)

使用sqoop导入/导出数据首先,导入和导出是相对与hdfs来说的,将数据添加到hdfs中,称之为导入import;反之为导出export。导出(导出到MySQL)需要准备要数据和MySQL表#数据1 sunwukong male2 qiqi female3 beijita male4 buerma female5 kelin ma... 查看详情

sqoop安装(代码片段)

...,用于在关系型数据库与HDFS之间进行数据转换。 sqoop安装步骤如下:1.下载,指定到目录下下载路径:https://mirrors.tuna.tsinghua.edu.cn/apache/sqoop/1.4.7/选择版本:sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz安装在master主节点上。解压:gunzip-dsqoop-... 查看详情

anaconda的安装与常用命令(代码片段)

...naconda替换自带的Python,并且全部用户都可以使用Anaconda。安装首先去官网下载对应操作平台的安装包,推荐使用国内的镜像源Tuna下载。如果觉得不喜欢Anaconda自带的第三方包,可以选择Minico 查看详情

docker安装与常用命令(代码片段)

一、docker架构docker架构一distribution负责与dockerregistry交互,上传洗澡镜像以及v2registry有关的源数据registry负责dockerregistry有关的身份认证、镜像查找、镜像验证以及管理registrymirror等交互操作image负责与镜像源数据有关的存储... 查看详情

sqoop学习之路(代码片段)

一、概述二、工作机制三、安装1、前提概述2、软件下载3、安装步骤四、Sqoop的基本命令基本操作示例五、Sqoop的数据导入1、从RDBMS导入到HDFS中2、把MySQL数据库中的表数据导入到Hive中3、把MySQL数据库中的表数据导入到hbase 正文... 查看详情

利用sqoop完成数据导入导出(代码片段)

一.安装SQOOP后可使用如下命令列出mysql数据库中的所有数据库,与检验是否安装成功。   # sqooplist-databases--connectjdbc:mysql://localhost:3306/--usernameroot--password123456二.hive与mysql数据互导  一.使用命令范例:sqoopimport--connectjdbc:mysql 查看详情

chd-5.3.6集群上sqoop安装(代码片段)

Sqoop(发音:skup)是一款开源的工具,主要用于在Hadoop(Hive)与传统的数据库(mysql、postgresql...)间进行数据的传递,可以将一个关系型数据库(例如:MySQL,Oracle,Postgres等)中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型... 查看详情

linux常用命令(代码片段)

...删除密码修改用户组的操作高权限用户特殊用户目录软件安装apt&yum自动安装手动安装环境变量配置文件权限VIM编辑器的简单使用命令模式底线命令模式编辑模式宏操作多文件操作查找&过滤find查找find与其他命令配合grep常... 查看详情

sqoop的安装(代码片段)

条件 1.启动mysql  servicemysqldstart    2.启动hadoop集群 start-all.sh1.下载jar包(:http://mirrors.hust.edu.cn/apache/sqoop/1.4.6/)2.上传安装包sqoop-1.4.6.bin__hadoop-2.0.4-alpha 查看详情

sqoop的安装和验证(代码片段)

... Kafka是一个开源的分布式消息订阅系统  一、Sqoop的安装  1.http://www-eu.apache.org/dist/sqoop/1.4.7/下载sqoop-1.4.7.bin__hadoop-2.6 查看详情

sqoop安装及导入sqlserver数据(代码片段)

...用对应的sqljdbc.jar包,这里用到的是sqljdbc4.jar点我下载3.安装sqoop将下载好的压缩包解压到指定安装目录,如/opttar-zxvfsqoop-1.4.7_hadoop 查看详情

sqoop简单回顾总结(代码片段)

...底层调用mapreduce,换言之使用sqoop必须得开yarn。3Sqoop安装 查看详情

记录kvm虚拟机常用操作管理命令(代码片段)

环境说明centos7中的KVMNAT方式是kvm安装后的默认方式。它支持主机与虚拟机的互访,同时也支持虚拟机访问互联网,但不支持外界访问虚拟机。检查当前的网络设置#virshnet-list--alldefault是宿主机安装虚拟机支持模块的时候自动安装... 查看详情

安装sqoop(代码片段)

1.sqoop的下载地址https://mirrors.tuna.tsinghua.edu.cn/apache/sqoop/1.4.7/sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz2.上传sqoop3.解压sqoopsudotar-zxvfsqoop-1.4.7.bin__hadoop-2.6.0.tar.gz-C/usr/local/4.进入/usr/local目录c 查看详情