`

sqoop数据的导入和导出

 
阅读更多

 

1、将mysql驱动拷贝到sqoop的lib中

 

2、测试sqoop与mysql的连接

[root@centos1 bin]#  sqoop list-databases --connect jdbc:mysql://192.168.1.100:3306/ --username root --password root

 

3、从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作业

#一条完整的命令
sqoop import --connect jdbc:mysql://192.168.1.100/test --username root --password root --table test --fields-terminated-by ':' -m 1
#数据库中的数据导入到HDFS上
sqoop import --connect jdbc:mysql://192.168.1.10:3306/test --username root --password 123  --table trade_detail --columns 'id, account, income, expenses'
#指定输出路径、指定数据分隔符
sqoop import --connect jdbc:mysql://192.168.1.10:3306/test --username root --password 123  --table trade_detail --target-dir '/sqoop/td' --fields-terminated-by '\t'
#指定Map数量 -m
sqoop import --connect jdbc:mysql://192.168.1.10:3306/test --username root --password 123  --table trade_detail --target-dir '/sqoop/td1' --fields-terminated-by '\t' -m 2 
#增加where条件, 注意:条件必须用引号引起来
sqoop import --connect jdbc:mysql://192.168.1.10:3306/test --username root --password 123  --table trade_detail --where 'id>3' --target-dir '/sqoop/td2' 
#增加query语句(使用 \ 将语句换行)
sqoop import --connect jdbc:mysql://192.168.1.10:3306/test --username root --password 123 \
--query 'SELECT * FROM trade_detail where id > 2 AND $CONDITIONS' --split-by trade_detail.id --target-dir '/sqoop/td3'

 注意:如果使用--query这个命令的时候,需要注意的是where后面的参数,AND $CONDITIONS这个参数必须加上,而且存在单引号与双引号的区别,如果--query后面使用的是双引号,那么需要在$CONDITIONS前加上\即\$CONDITIONS,如果设置map数量为1个时即-m 1,不用加上--split-by ${tablename.column},否则需要加上

 

3、将hdfs上的数据导入到mysql

[root@centos1 bin]# sqoop export --connect jdbc:mysql://192.168.1.100:3306/test --username root --password root --export-dir '/td3' --table td_bak -m 1 --fields-terminated-by ','

 

4、配置mysql远程连接

GRANT ALL PRIVILEGES ON itcast.* TO 'root'@'192.168.1.201' IDENTIFIED BY '123' WITH GRANT OPTION;
	FLUSH PRIVILEGES; 
	
	GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123' WITH GRANT OPTION;
	FLUSH PRIVILEGES
	

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

分享到:
评论

相关推荐

    23-Sqoop数据导入导出1

    【Sqoop数据导入导出详解】 Sqoop是一个用于在关系型数据库和Hadoop之间传输数据的工具,它利用Hadoop的MapReduce框架实现大规模数据的高效导入和导出。本篇将详细介绍Sqoop的导入和导出过程,以及在MySQL、HDFS、...

    大数据实践-sqoop数据导入导出.doc

    【大数据实践-Sqoop数据导入导出】 Sqoop是一个用于在关系型数据库和Hadoop之间进行数据迁移的工具。在大数据处理中,Sqoop扮演着关键角色,它使得传统数据库中的数据可以方便地导入到Hadoop的HDFS(Hadoop ...

    实战Sqoop数据导入及大数据用户行为案例分析

    实战Sqoop数据导入及大数据用户行为案例分析(全套视频+代码+工具+课件讲义) 内容包括: 01_CDH版本框架的介绍 02_CDH版本框架的环境部署 03_Sqoop的介绍及其实现原理 04_Sqoop的安装部署及连接测试 05_Sqoop将...

    星环大数据平台_Sqoop数据导入.pdf

    文档中还提到了文件服务器的配置,包括其IP地址和共享目录,这些信息对于Sqoop数据导入过程中的文件传输是必要的。文件服务器扮演的角色是在不同服务器之间共享数据和工具,以便于Sqoop操作。 对于Sqoop的具体命令...

    大数据管理与监控:Cloudera Manager:Sqoop数据导入导出技术.docx

    大数据管理与监控:Cloudera Manager:Sqoop数据导入导出技术.docx

    sqoop导入数据到hive中,数据不一致

    6. 并行度和分片:Sqoop可以通过设置并行度来加快数据导入速度,但不正确的并行设置可能导致数据碎片或数据丢失。合理设置split-by参数和-m(map任务数量)参数,以确保数据正确分片。 7. Sqoop版本兼容性:不同的...

    SQOOP导入和导出参数.pdf

    它通过JDBC连接到关系型数据库,并利用MapReduce作业进行高效的大规模数据导入和导出。本文档将详细介绍SQOOP的`import`和`export`工具的参数配置,旨在帮助用户更好地理解和使用SQOOP。 #### 二、SQOOP Import ...

    sqoop的数据导入

    同时,需要注意的是,Sqoop 数据导入过程可能会对数据库和 Hadoop 集群造成一定的性能影响,因此合理规划导入时间和资源使用是必要的。 文件 "DataLoad" 可能包含导入数据的示例脚本或具体配置,通过分析这个文件,...

    2、sqoop导入(RMDB-mysql、sybase到HDFS-hive)

    在大数据处理中,Sqoop 提供了方便的数据导入和导出功能,它能够将结构化的数据从传统数据库迁移到 Hadoop 生态系统中的组件,如 Hive。 在本主题中,我们将深入探讨 Sqoop 的导入功能,特别是如何将数据从 MySQL ...

    sqoop需要导入的包

    它使得在 Hadoop 集群与 MySQL 这样的 RDBMS(关系型数据库管理系统)之间导入导出数据变得方便快捷。在这个场景中,我们关注的两个关键包是 `mysql-connector-java-5.1.45.jar` 和 `json-to-sqoop.jar`。 首先,`...

    sqoop导入数据到hdfs路径

    通过Sqoop,用户可以从关系型数据库(如MySQL、Oracle等)中抽取数据并存储到Hadoop的HDFS中,或者将HDFS中的数据导出到关系型数据库中。 #### 二、导入数据到HDFS的命令解析 根据提供的部分内容,我们可以详细...

    hadoop平台下的数据导入导出工具sqoop

    3. **灵活性**:支持多种数据导入导出方式,如全量导入、增量导入等。 4. **安全性**:支持SSL加密、Kerberos认证等多种安全机制。 #### 三、环境搭建与配置 - **Hadoop环境**:首先需要确保已经部署好Hadoop集群...

    Hadoop-Sqoop-Oracle:使用Sqoop在Oracle数据库和HDFS之间进行导入和导出

    使用Sqoop在Oracle数据库和HDFS之间进行导入和导出 内容 使用 操作系统-Ubuntu 20.04.1 LTS(VMware) 后端-Java (JDK 1.8), Sqoop(v1.4.7) , Hadoop(v3.3.0) 库-OJDBC(v7),commons-lang-2.6.jar ...

    大数据技术基础实验报告-sqoop的安装配置与应用.doc

    **三、Sqoop数据的导入导出** 1. **数据导出**:首先确保MySQL服务已经启动,然后登录数据库创建新的数据库和表并插入数据。例如,创建名为 `test` 的数据库和 `user` 表,并插入5条数据。 2. **数据导入**: - ...

    Sqoop数据采集工具简介、安装、使用学习笔记(配合Hive和Hbase)

    - 在使用 Sqoop 进行数据导入或导出时,需要确保源端和目标端的数据格式一致,以避免数据类型不匹配导致的问题。 - 当使用 Sqoop 与 Hive 或 HBase 配合时,需要特别注意表结构的一致性,包括列名、数据类型等。 - ...

    实验13-sqoop数据集成.docx

    本实验的主要目的就是熟悉Sqoop数据集成,通过安装和配置Sqoop、MySQL数据库,并使用Sqoop工具将数据从MySQL数据库中导入到HDFS中。 一、实验准备 在进行实验之前,需要准备好实验用的硬件和软件环境。硬件环境...

    使用sqoop抽取mysql数据

    Sqoop 是一个用于在 Hadoop 和关系型数据库之间进行数据导入导出的工具,它使得在大数据处理场景下,能够方便地将结构化的数据从 MySQL 这样的 RDBMS(关系型数据库管理系统)转移到 Hadoop 的 HDFS(Hadoop 分布式...

    数据同步Sqoop用法之mysql与Hive导入导出.docx

    Sqoop 用法之 MySQL 与 Hive 导入导出 Sqoop 是一个专门用于将 Hadoop 和关系型数据库中的数据相互转移的工具,可以将一个关系型数据库(例如:MySQL、Oracle、Postgres 等)中的数据导进到 Hadoop 的 HDFS 中,也...

    05_将数据导入HDFS.docx

    在本章中,我们将讨论如何使用Flume和Sqoop等工具将数据导入HDFS。 使用Flume将数据导入HDFS Flume是一个分布式、可靠的、可用的服务,用于高效地移动大量数据。它非常适合从多个系统收集日志,并在生成日志时将其...

Global site tag (gtag.js) - Google Analytics