hive是数据仓库工具,解释器,编译器,忧化器,是非java程序员使用hdfs数据。

hive是将sql语句转换成MapReduce任务执行,源数据是HDFS,目标数据在关系型数据库中。

1.下载安装hive

[root@node1 ~]# wget http://mirrors.shu.edu.cn/apache/hive/hive-2.3.4/apache-hive-2.3.4-bin.tar.gz

[root@node1 ~]# tar xvf apache-hive-2.3.4-bin.tar.gz -C /opt/

[root@node1 ~]# cd /opt/

[root@node1 opt]# mv apache-hive-2.3.4-bin/ hive-2.3.4

2.配置环境变量

[root@node1 opt]# vim /etc/profile

export JAVA_HOME=/usr/java/jdk1.8.0_202-amd64

export HIVE_HOME=/opt/hive-2.3.4

export PATH=$PATH:$HIVE_HOME/bin

[root@node1 opt]# source /etc/profile

[root@node1 opt]# hive --version

Hive 2.3.4

Git git://daijymacpro-2.local/Users/daijy/commit/hive -r 56acdd2120b9ce6790185c679223b8b5e884aaf2

Compiled by daijy on Wed Oct 31 14:20:50 PDT 2018

From source with checksum 9f2d17b212f3a05297ac7dd40b65bab0

[root@node1 opt]#

3.修改配置文件

[root@node1 opt]# cd hive-2.3.4/conf/

[root@node1 conf]# cp -a hive-default.xml.template  hive-site.xml

[root@node1 conf]# vim hive-site.xml   --添加mysql连接信息

javax.jdo.option.ConnectionUserName        --以下配置只需要在配置文件修改即可,里面全部包含了

hive

javax.jdo.option.ConnectionPassword

system

javax.jdo.option.ConnectionURL

jdbc:mysql://172.16.9.100:3306/hive?createDatabaseIfNotExist=true

javax.jdo.option.ConnectionDriverName

com.mysql.jdbc.Driver

[root@node1 conf]# mv mysql-connector-java-5.1.32.jar /opt/hive-2.3.4/lib/

[root@node1 conf]# mkdir /opt/hive-2.3.4/tmp

[root@node1 conf]# vim hive-site.xml

用/opt/hive-2.3.4/tmp替换"system:java.io.tmpdir"的配置项

[root@node1 conf]# schematool -initSchemaTo 2.2.0 -dbType mysql    --初使化mysql,可以选择版本2.2.0,默认安装的2.3.0会报错

SLF4J: Class path contains multiple SLF4J bindings.

SLF4J: Found binding in [jar:file:/opt/hive-2.3.4/lib/log4j-slf4j-impl-2.6.2.jar!/org/slf4j/impl/StaticLoggerBinder.class]

SLF4J: Found binding in [jar:file:/opt/hadoop-2.8.5/share/hadoop/common/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]

SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.

SLF4J: Actual binding is of type [org.apache.logging.slf4j.Log4jLoggerFactory]

Metastore connection URL: jdbc:mysql://172.16.9.100:3306/hive?createDatabaseIfNotExist=true     --请注意信息是否与配置文件相附合

Metastore Connection Driver : com.mysql.jdbc.Driver    --请注意信息是否与配置文件相附合

Metastore connection User: hive                     --请注意信息是否与配置文件相附合

Starting metastore schema initialization to 2.2.0

Initialization script hive-schema-2.2.0.mysql.sql

Initialization script completed

schemaTool completed

[root@node1 conf]#

4.创建数据库和表

[root@node1 conf]# hive

SLF4J: Class path contains multiple SLF4J bindings.

SLF4J: Found binding in [jar:file:/opt/hive-2.3.4/lib/log4j-slf4j-impl-2.6.2.jar!/org/slf4j/impl/StaticLoggerBinder.class]

SLF4J: Found binding in [jar:file:/opt/hadoop-2.8.5/share/hadoop/common/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]

SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.

SLF4J: Actual binding is of type [org.apache.logging.slf4j.Log4jLoggerFactory]

Logging initialized using configuration in jar:file:/opt/hive-2.3.4/lib/hive-common-2.3.4.jar!/hive-log4j2.properties Async: true

Hive-on-MR is deprecated in Hive 2 and may not be available in the future versions. Consider using a different execution engine (i.e. spark, tez) or using Hive 1.X releases.

hive> create database tong;

OK

Time taken: 8.08 seconds

hive> use tong;

OK

Time taken: 0.144 seconds

hive> create table t(a int,b int);

OK

Time taken: 1.253 seconds

hive>

5.在mysql中查看数据库和表信息

[root@tongc-yum162 ~]# mysql -u root -p

Enter password:

Welcome to the MariaDB monitor.  Commands end with ; or \g.

Your MySQL connection id is 975614

Server version: 5.6.35 MySQL Community Server (GPL)

Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MySQL [(none)]> use hive

Reading table information for completion of table and column names

You can turn off this feature to get a quicker startup with -A

Database changed

MySQL [hive]> select * from DBS;

+-------+-----------------------+----------------------------------------------+---------+------------+------------+

| DB_ID | DESC                  | DB_LOCATION_URI                              | NAME    | OWNER_NAME | OWNER_TYPE |

+-------+-----------------------+----------------------------------------------+---------+------------+------------+

|     1 | Default Hive database | hdfs://mycluster/user/hive/warehouse         | default | public     | ROLE       |

|     2 | NULL                  | hdfs://mycluster/user/hive/warehouse/tong.db | tong    | root       | USER       |

+-------+-----------------------+----------------------------------------------+---------+------------+------------+

2 rows in set (0.00 sec)

MySQL [hive]> select * from TBLS;

+--------+-------------+-------+------------------+-------+-----------+-------+----------+---------------+--------------------+--------------------+--------------------+

| TBL_ID | CREATE_TIME | DB_ID | LAST_ACCESS_TIME | OWNER | RETENTION | SD_ID | TBL_NAME | TBL_TYPE      | VIEW_EXPANDED_TEXT | VIEW_ORIGINAL_TEXT | IS_REWRITE_ENABLED |

+--------+-------------+-------+------------------+-------+-----------+-------+----------+---------------+--------------------+--------------------+--------------------+

|      1 |  1552831024 |     2 |                0 | root  |         0 |     1 | t        | MANAGED_TABLE | NULL               | NULL               |                    |

+--------+-------------+-------+------------------+-------+-----------+-------+----------+---------------+--------------------+--------------------+--------------------+

1 row in set (0.00 sec)

MySQL [hive]>

错误信息:

Logging initialized using configuration in jar:file:/opt/hive-2.3.4/lib/hive-common-2.3.4.jar!/hive-log4j2.properties Async: true

Exception in thread "main" java.lang.IllegalArgumentException: java.net.URISyntaxException: Relative path in absolute URI: ${system:java.io.tmpdir%7D/$%7Bsystem:user.name%7D

解决方法:

[root@node1 conf]# mkdir /opt/hive-2.3.4/tmp

[root@node1 conf]# vim hive-site.xml

用/opt/hive-2.3.4/tmp替换"system:java.io.tmpdir"的配置项

[root@node1 conf]#

错误信息:

Error: Syntax error: Encountered "" at line 1, column 64. (state=42X01,code=30000)

org.apache.hadoop.hive.metastore.HiveMetaException: Schema initialization FAILED! Metastore state would be inconsistent !!

解决方法:

[root@node1 derby]# vim hive-schema-2.3.0.derby.sql   --注释以下两行

--CREATE FUNCTION "APP"."NUCLEUS_ASCII" (C CHAR(1)) RETURNS INTEGER LANGUAGE JAVA PARAMETER STYLE JAVA READS SQL DATA CALLED ON NULL INPUT EXTERNAL NAME

'org.datanucleus.store.rdbms.adapter.DerbySQLFunction.ascii' ;

--CREATE FUNCTION "APP"."NUCLEUS_MATCHES" (TEXT VARCHAR(8000),PATTERN VARCHAR(8000)) RETURNS INTEGER LANGUAGE JAVA PARAMETER STYLE JAVA READS SQL DATA CALLED ON NULL INPUT EXTERNAL NAME

'org.datanucleus.store.rdbms.adapter.DerbySQLFunction.matches' ;

[root@node1 derby]# schematool -initSchema -dbType derby createDatabaseIfNotExist=true

SLF4J: Class path contains multiple SLF4J bindings.

SLF4J: Found binding in [jar:file:/opt/hive-2.3.4/lib/log4j-slf4j-impl-2.6.2.jar!/org/slf4j/impl/StaticLoggerBinder.class]

SLF4J: Found binding in [jar:file:/opt/hadoop-2.8.5/share/hadoop/common/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]

SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.

SLF4J: Actual binding is of type [org.apache.logging.slf4j.Log4jLoggerFactory]

Metastore connection URL: jdbc:derby:;databaseName=metastore_db;create=true

Metastore Connection Driver : org.apache.derby.jdbc.EmbeddedDriver

Metastore connection User: APP

Starting metastore schema initialization to 2.3.0

Initialization script hive-schema-2.3.0.derby.sql

Initialization script completed

schemaTool completed

[root@node1 derby]#

hive 2.3 mysql_hive 2.3.4环境搭建相关推荐

  1. hive环境搭建提示: java.lang.NoSuchMethodError: com.google.common.base.Preconditions.checkArgument

    hive环境搭建提示: java.lang.NoSuchMethodError: com.google.common.base.Preconditions.checkArgument SLF4J: A ...

  2. Hive相关(概述、环境搭建、命令、API、JDBC、HBase整合等)

    Hive Apache Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的类sql查询功能,可以将sql语句转换为MapReduce任务进行运行.其优 ...

  3. Hive环境搭建--轻量级安装so easy!

    Hive环境搭建 一.准备工作 1.安装包下载 2.虚拟机需先安装好hadoop 3.安装mysql 二.安装hive 三.配置环境变量 1.配置环境变量 2.修改hive配置文件 四.启动hive ...

  4. zeppelin环境搭建及连接hive使用--简易版一看就会

    zeppelin环境搭建及连接hive使用 一.准备工作 1.zepeelin简介 2.安装包下载 3.环境要求 二.解压安装 三.修改配置文件 1.修改配置文件zeppelin-site.xml 2 ...

  5. Hadoop+hive+flask+echarts大数据可视化项目之hive环境搭建与系统数据的分析思路

    Hadoop+hive+flask+echarts大数据可视化项目(四) --------------hive环境搭建与系统数据的分析思路---------------- 关注过Hadoop+hive ...

  6. 小知识点:ARM 架构 Linux 大数据集群基础环境搭建(Hadoop、MySQL、Hive、Spark、Flink、ZK、Kafka、Nginx、Node)

      换了 M2 芯片的 Mac,以前 x86 版本的 Linux 大数据集群基础环境搭建在 ARM 架构的虚拟机集群上有些用不了了,现在重新写一份基于 ARM 架构的,少数不兼容之外其他都差不多,相当 ...

  7. 最详细的Hadoop+Hbase+Hive完全分布式环境搭建教程(二)

    继续上次的教程,这次安装hbase与hive.之前有同学反应百度网盘中没有hbase安装包,这次补上了,在上篇博客的网盘链接中已经有了,最详细的Hadoop+Hbase+Hive完全分布式环境搭建教程 ...

  8. Hadoop+hive+flask+echarts大数据可视化项目之系统数据整合和hadoop环境搭建

    Hadoop+hive+flask+echarts大数据可视化项目(二) --------------系统数据整合和hadoop环境搭建---------------- 关注Hadoop+Hive+F ...

  9. 大数据单机学习环境搭建(5)Hive建表DDL详解

    专题:大数据单机学习环境搭建和使用 1. Hive建表简单示例 1.1.Hive建表语句 1.2.表详细信息 1.3.数据展示 2. Hive建表语法详解 3.拓展1:复杂数据分割 4.拓展2:事务表 ...

  10. 8、Hive数据仓库——环境搭建及简单使用

    文章目录 Hive数据仓库--环境搭建及简单使用 Hive的安装和使用 一.Linux的JDK的安装 (已经安装过JDK可以跳过此步骤) 二.离线安装MySQL(已经安装过MySQL可以跳过此步骤) ...

最新文章

  1. 技术图文:双指针在链表问题中的应用
  2. PHP分页类(较完美)
  3. 儿童编程软件python-MRT7-Python少儿编程下载
  4. ngTemplateOutlet递归的问题
  5. ES6——class
  6. 杭电2067小兔的棋盘
  7. shell中判断一个参数是否为整型
  8. Linux 开发环境工具 下载网址大全
  9. 学习 shell —— 条件判断 if 的参数
  10. c语言文本编辑器源代码_程序员专属的10个免费编程文本编辑器,哪个是你的最爱?...
  11. 音频参数测试软件,音频测试参数详解.doc
  12. 2018 IEEE International Conference on Cyborg and Bionic Systems (CBS)国际会议的组织和参入感悟
  13. 清北级别,补助丰厚,这样的中科院信工所你心动了吗?
  14. 使用go进行人脸识别活体检测
  15. 王道数据结构代码---第五章:二叉树(重要)
  16. MySQL事务隔离及锁机制
  17. 直通车点击率、点击率、创意图、关键词、出价卡位,提升直通车点击率的技巧和方法
  18. Android 性能优化(62)---存检测、卡顿优化、耗电优化、APK瘦身——详解篇
  19. Ceph学习——Librbd块存储库与RBD读写流程源码分析
  20. JSFuck奇葩的js编码

热门文章

  1. pyecharts查看版本_pyecharts的版本问题
  2. c++指针初始化问题
  3. 关于【CSDN免积分下载器】的分析
  4. docker常用操作(六)docker安装内网穿透nps
  5. 10分钟部署一套开源表单系统
  6. 下载编译goldfish内核
  7. JAVA 实现生命游戏
  8. Flash网页游戏开发
  9. java开发转测试开发经历
  10. html显示ftp资料,获取FTP信息及使用方法