Hive2.1.1的安装教程(元数据放在本地Mysql)

  • 目录
    • 1.上传tar包
    • 2.解压
    • 3. 设置环境变量
    • 4.设置Hive的配置文件
    • 5.启动Hive
    • 6.安装MySQL
    • 7.下载MySQL的驱动包
    • 8.修改Hive的配置文件
    • 9.启动Hive
    • 10.查看MySQL数据库

目录

1.上传tar包

jar包地址:http://hive.apache.org/downloads.html

2.解压

tar -zxvf apache-hive-2.1.1-bin.tar.gz -C /usr/local/ 

进入到/usr/local目录下,将解压后的文件重命名为hive-2.1.1

mv apache-hive-2.1.1-bin/ hive-2.1.1

3. 设置环境变量

export HIVE_HOME=/usr/local/hive-2.1.1
export PATH=$PATH:$HIVE_HOME/bin

使配置立即生效

source /etc/profile 

hive没有提供hive –version这种方式查看版本,执行hive –help查看
这里写图片描述

4.设置Hive的配置文件

在目录$HIVE_HOME/conf/下,执行命令
cp hive-log4j2.properties.template hive-log4j2.properties拷贝一份重命名 ,并修改property.hive.log.dir = /usr/local/hive-2.1.1/logs/
暂时只配置这些

5.启动Hive

Hadoop集群要先启动

Starting from Hive 2.1, we need to run the schematool command below as an initialization step. For example, we can use “derby” as db type.$ $HIVE_HOME/bin/schematool -dbType <db type> -initSchema

这是Hive的官方文档上描述的,Hive2.1的启动需要先执行schematool命令
由于Hive默认内嵌的是derby数据库,先使用默认的数据库运行
执行schematool -dbType derby -initSchema进行初始化

这里写图片描述
执行命令hive进入到Hive Shell操作
这里写图片描述
此时Hive安装成功。
默认情况下,Hive的元数据保存在了内嵌的derby数据库里,但一般情况下生产环境使用MySQL来存放Hive元数据。

6.安装MySQL

参考:https://blog.csdn.net/qq_16633405/article/details/81872456

7.下载MySQL的驱动包

下载MySQL的驱动包放置到$HIVE_HOME/lib目录下,本机使用的版本是mysql-connector-Java-5.1.36-bin.jar。

8.修改Hive的配置文件

在目录$HIVE_HOME/conf/下,执行命令cp hive-default.xml.template hive-site.xml拷贝重命名
将hive-site.xml里面的property属性配置全部删除,Hive会加载默认配置。
添加如下内容(只需要将最后两个属性更改为你mysql的用户名和对应的登录密码就OK了,其他全部照搬):

<configuration>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true</value>
<description>JDBC connect string for a JDBC metastore</description>
</property><property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
<description>Driver class name for a JDBC metastore</description>
</property><property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>root</value>
<description>username to use against metastore database</description>
</property><property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>root</value>
<description>password to use against metastore database</description>
</property>
</configuration>

9.启动Hive

Hadoop集群要先启动

9.1 执行命令hive
出现不能实例化metadata的错误
这里写图片描述
以及MySQL连接被拒绝的错误
这里写图片描述
9.2 首先解决MySQL连接被拒绝问题

mysql -uroot -proot
grant all privileges on *.* to root@'spark' identified by 'root';
flush privileges;
exit;

这里写图片描述
*.*代表全部数据库的全部表授权,也可以指定数据库授权,如test_db.*;
all privileges代表全部权限,也可以insert,update,delete,create,drop等;
允许root用户在spark(Linux系统的主机名,IP映射)进行远程登陆,并设置root用户的密码为root。
flush privileges告诉服务器重新加载授权表。

9.3 解决不能实例化metadata的错误
Hive2.1的启动需要先执行schematool命令进行初始化

schematool -dbType mysql -initSchema 

这里写图片描述
9.4 再次执行hive,进入到Hive Shell

这里写图片描述
此时Hive和MySQL连接安装部署成功。

10.查看MySQL数据库

hive-site.xml配置的是jdbc:mysql://spark:3306/hive?createDatabaseIfNotExist=true,即如果不存在hive数据库会创建
默认MySQL里的数据库
这里写图片描述

此时在MySQL里查看数据库,多出了hive数据库
这里写图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/456785.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

App性能优化之内存优化

2019独角兽企业重金招聘Python工程师标准>>> 为什么要进行内存优化呢&#xff1f;其实我们可以反过来想。如果不进行内存优化会产生什么样的问题&#xff1f; App的运行是有内存限制的&#xff0c;超过限制会产生OOM&#xff0c;导致App崩溃。如果内存不进行优化&am…

python+Tesseract-OCR实现图片识别(只适合新手)

1.首先准备环境&#xff1a; python版本&#xff1a;2.7/3.6 操作系统&#xff1a;windows系统 2.准备工具&#xff1a; tesseract-ocr 安装后设置好环境变量 链接: https://pan.baidu.com/s/1j8lBbQBrrbPaHAn5ujWFSw 提取码: 2med Pycharm 3.安装相关python包&#xf…

Linux 网络编程详解四(流协议与粘包)

TCP/IP协议是一种流协议&#xff0c;流协议是字节流&#xff0c;只有开始和结束&#xff0c;包与包之间没有边界&#xff0c;所以容易产生粘包&#xff0c;但是不会丢包。 UDP/IP协议是数据报&#xff0c;有边界&#xff0c;不存在粘包&#xff0c;但是可能丢包。 产生粘包问题…

解决selenium.common.exceptions.WebDriverException: Message: unknown error: call function result missin

(Session info: chrome73.0.3683.103)(Driver info: chromedriver2.30.477700 (0057494ad8732195794a7b32078424f92a5fce41),platformWindows NT 10.0.17134 x86_64)报错如上&#xff0c;由于版本不兼容 下面是谷歌浏览器与chromedriver的版本对应关系&#xff0c;供参考&#…

执行Hive语句报错:FAILED: Error in metadata: javax.jdo.JDOFatalDataStoreException: Access denied for user '

安装个Hive真不省心&#xff0c;各种问题。最近安装好Hive后执行Hive语句时碰到这样的错误&#xff1a; hive> show databases; FAILED: Error in metadata: javax.jdo.JDOFatalDataStoreException: Access denied for user rootlocalhost (using password: YES) NestedThr…

GPU

import tensorflow as tf a tf.constant([1.0,2.0,3.0,4.0,5.0,6.0],shape[2,3],namea) b tf.constant([1.0,2.0,3.0,4.0,5.0,6.0],shape[3,2],nameb) c tf.matmul(a,b)sess tf.Session(configtf.ConfigProto(log_device_placementTrue)) print sess.run(c)

阿里云部署django项目流程【centos7+python3+mysql】

购买阿里云服务器 到[阿里云官网]&#xff0c;选择轻量应用服务器&#xff0c; 步骤如图所示&#xff1a; 地域随便选择哪一个&#xff0c;镜像的话&#xff0c;对比了CentOS&#xff0c;Debian&#xff0c;Ubuntu&#xff0c;我最终选择了CentOS&#xff0c;因为流行嘛&…

XidianOJ 1123 K=1 Problem of Orz Pandas

题目描述 One panda named orz is playing a interesting game, he gets a big integer Num and an integer K. In this game, he can exchange two single numbers in Num. For example, he can get 1243 from 3241 by exchange 1 and 3.But orz can exchange at most K times…

对于频繁的写数据处理方式

添加一个新的表情的时候 调用 recentEmotions方法 将所有表情写入数组 每次都是 添加一个新的表情进来 要将沙盒中的所有表情首先加载进数组&#xff0c;然后将表情添加到数组里面 然后在将数组写入沙盒 处理方式 没有必要每次都要到沙盒里面读取数组文件 类方法 不能访问 成员…

在Mysql中显示所有用户的操作教程(Linux环境下)

1.登录数据库 首先&#xff0c;你需要使用如下命令登录到数据库&#xff0c;注意&#xff0c;必须是root用户哦~ mysql -u root -p 2.查询用户表 在Mysql中其实有一个内置且名为mysql的数据库&#xff0c;这个数据库中存储的是Mysql的一些数据&#xff0c;比如用户、权限信…

Scrapy 框架【学习笔记01】

Scrapy 框架 Scrapy是用纯Python实现一个为了爬取网站数据、提取结构性数据而编写的应用框架&#xff0c;用途非常广泛。 框架的力量&#xff0c;用户只需要定制开发几个模块就可以轻松的实现一个爬虫&#xff0c;用来抓取网页内容以及各种图片&#xff0c;非常之方便。 Scra…

通过profile 用maven命令打不同配置的变量包

profiles定义如下<profiles><profile><id>local</id><properties><deploy.type>local</deploy.type></properties></profile><profile><id>dev</id><properties><deploy.type>dev</de…

执行Hive的查询语句报错:java.lang.IllegalArgumentException: Does not contain a valid host:port authority: loca

好不容易把Hive装完了&#xff0c;结果一执行Hive的查询语句运行MapReduce程序立马报错。。。 log详细信息如下&#xff1a; Job running in-process (local Hadoop) Hadoop job information for null: number of mappers: 1; number of reducers: 0 2017-10-21 21:54:15,503…

scrapy startproject【学习笔记02】

入门案例 学习目标 创建一个Scrapy项目定义提取的结构化数据(Item)编写爬取网站的 Spider 并提取出结构化数据(Item)编写 Item Pipelines 来存储提取到的Item(即结构化数据) 一. 新建项目(scrapy startproject) 在开始爬取之前&#xff0c;必须创建一个新的Scrapy项目。进入…

开始把其他的博客搬家到这里了

今天&#xff0c;用一晚上的时间进行一下文章的迁移吧。这样以后查询就可以在自己的博客中查找了&#xff0c;也算是给自己一个写作的规律。 从很多个大牛的博客中都阅读到&#xff0c;写博客对于一个coder的重要性。希望这次可以坚持。转载于:https://www.cnblogs.com/cyforev…

java系统高并发解决方案(转载)

转载博客地址&#xff1a;http://blog.csdn.net/zxl333/article/details/8685157 一个小型的网站&#xff0c;比如个人网站&#xff0c;可以使用最简单的html静态页面就实现了&#xff0c;配合一些图片达到美化效果&#xff0c;所有的页面均存放在一个目录下&#xff0c;这样的…

Request/Response【学习笔记03】

Request Request 部分源码&#xff1a; # 部分代码 class Request(object_ref):def __init__(self, url, callbackNone, methodGET, headersNone, bodyNone, cookiesNone, metaNone, encodingutf-8, priority0,dont_filterFalse, errbackNone):self._encoding encoding # t…

TotoiseSVN的上手教程

本文转自&#xff1a;http://www.cnblogs.com/xilentz/archive/2010/05/06/1728945.html TotoiseSVN的基本使用方法&#xff1a; 一、签入源代码到SVN服务器 假如我们使用Visual Studio在文件夹StartKit中创建了一个项目&#xff0c;我们要把这个项目的源代码签入到SVN Serv…

ALV可输入状态下输入金额字段变小数的问题

http://blog.163.com/mxb_sapyeah/blog/static/10335262520167109022155/ 小数位数两位 当我在给ALV上给该字段输入整数 ‘1234 ‘ 时&#xff0c;该数据居然会默认变成‘12.34’ 可以在这里解决这个问题。就是定义字段目录的时候&#xff0c;对于金额字段指定参考数据类型就…

Downloader Middlewares反反爬虫【学习笔记04】

反反爬虫相关机制 Some websites implement certain measures to prevent bots from crawling them, with varying degrees of sophistication. Getting around those measures can be difficult and tricky, and may sometimes require special infrastructure. Please consi…