文档章节

使用sqoop从mysql导入到hive基本操作

jcc_codingBoy
 jcc_codingBoy
发布于 2017/08/07 18:01
字数 285
阅读 22
收藏 0

1、编码基本设置

由于hdfs使用的是utf-8的编码格式,所以不管是从mysql导入,还是直接上传文件,编码格式必须是utf-8,否则就会出现乱码,所有有几个编码设置点要注意:

(1)、源数据mysql需要设置my.cnf配置文件  (不同版本可能设置不一样)    

   [client] 

 default-character-set=utf8  

 /*[mysqld]*/  

character-set-server=utf8 

(2)、源数据库(database编码确认设置)

    mysql> show variables like 'char%';
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |
| character_set_database   | utf8                       |
| character_set_filesystem | binary                     |
| character_set_results    | utf8                       |
| character_set_server     | utf8                       |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |

如果不是以上格式,使用该指令设置,变换不同参数即可:set character_set_server=utf8;

(3)读取源数据的jdbc连接加上utf-8编码

      sqoop import --connect jdbc:mysql://10.0.13.116:3306/test?characterEncoding=UTF-8   --username hive --password for3edc4rfv --table driver --delete-target-dir --hive-overwrite --fields-terminated-by "," --target-dir /apps/hive/warehouse/t_driver

(4)hive的jdbc连接也设置utf-8

   <property>
      <name>javax.jdo.option.ConnectionURL</name>
      <value>jdbc:mysql://localhost/hive?createDatabaseIfNotExist=true&amp;characterEncoding=UTF-8</value>
    </property>

 

2、执行sqoop指令的权限

  由于sqoop需要操作hdfs,所以需要使用hdfs账号执行sqoop指令,否则要报无权限错误;

© 著作权归作者所有

共有 人打赏支持
jcc_codingBoy
粉丝 0
博文 20
码字总数 14741
作品 0
成都
程序员
sqoop导入数据到Base并同步hive与impala

使用Sqoop从MySQL导入数据到Hive和HBase 及近期感悟 基础环境 Sqool和Hive、HBase简介 测试Sqoop 使用Sqoop从MySQL导入数据到Hive 使用Sqoop从MySQL导入数据到HBase 关于Sqoop2 综上所述 其他...

hblt-j
07/20
0
0
sqoop 完成与关系型数据库的互导

一.安装SQOOP后可使用如下命令列出mysql数据库中的所有数据库,与检验是否安装成功。 # sqoop list-databases --connect jdbc:mysql://localhost:3306/ --username root --password 123456 ...

gulf
06/26
0
0
sqoop实战(五)

1 Importing Data Directly into Hive 关系型数据库-----hive sqoop import --connect jdbc:mysql://192.168.130.221/sqoop --username root --password root --table tblplace --hive-impor......

发光体
2016/02/26
118
0
Sqoop常用操作

首先保证HDFS和HiveServer2正常运行,集群运行在debugo01,debugo02,debugo03三台主机上。 1. 准备mysql数据 在debugo03的MySQL中新建一个测试数据库,并建测试表employee_salary。 2. 安装s...

闪电
2016/07/28
7
0
sqoop的安装与使用,sqoop安装使用

sqoop的安装与使用,sqoop安装使用 1.什么是Sqoop Sqoop即 SQL to Hadoop ,是一款方便的在传统型数据库与Hadoop之间进行数据迁移的工具,充分利用MapReduce并行特点以批处理的方式加快数据传...

Zero零_度
2016/06/06
426
0

没有更多内容

加载失败,请刷新页面

加载更多

Java GC机制详解

垃圾收集 Garbage Collection 通常被称为“GC”,本文详细讲述Java垃圾回收机制。 导读: 1、什么是GC 2、GC常用算法 3、垃圾收集器 4、finalize()方法详解 5、总结--根据GC原理来优化代码 ...

小刀爱编程
18分钟前
1
0
ORACEL学习--理解over()函数

二、理解over()函数 1.1、两个order by的执行时机 分析函数是在整个sql查询结束后(sql语句中的order by的执行比较特殊)再进行的操作, 也就是说sql语句中的order by也会影响分析函数的执行结果...

spinachgit
20分钟前
1
0
抽象语法树

import asttree = ast.parse('def hello_word(): print("hello world!")')def hell_word(): print(1)print(ast.dump(tree)) 语法树 可以基于这个实现另外一种编程语言...

colin_86
20分钟前
1
0
Akka查询设备组《fourteen》译

加入以下依赖到项目中: 介绍: 到目前为止,我们看到的会话模式很简单,因为它们要求Actor保持很少或没有状态。 特别: 设备actor返回一个读数,不需要更改状态。 记录温度,更新单个字段。...

woshixin
28分钟前
1
0
wait、notify、notifyAll 的用法

wait()、notify()、notifyAll()是三个定义在Object类里的方法,用来控制线程的状态。这三个方法最终调用的都是jvm的native方法, 随着jvm运行平台的不同可能有些许差异。 wait(): 使持有该对...

noob_fly
30分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部