博主学习Hadoop学习到Hive,一开始跟着资料去安装Hive 1.x一点问题也没有,方便快捷啊,但是看了一下官方文档,上面好像说Hive 2.0修复了很多bug,那么我想,我还是用Hive2.0好了。于是我开始按照原来的流程配置Hive2.0,遇到了各种问题,而且由于版本太新,国内网站上的解决方案基本上没有用。查阅各种资料,现在终于配置好了。所以写这篇博文分享,希望减少跟我一样的新手在使用Hive2.0的时候遇到的阻力。



Hive 1.x与2.x

As of June 2015, Hive has two “main lines”, master and branch-1. 
All new feature work and bug fixes in Hive are contributed to the master branch. As of June 2015, releases from master are numbered 2.x. The 2.x versions are not necessarily backwards compatible with 1.x versions. 
branch-1 is used to build stable, backward compatible releases. Releases from this branch are numbered 1.x (where 1.3 will be the first release from it, as 1.2 was released from master prior to the creation of branch-1). Until at least June 2016 all critical bug fixes (crashes, wrong results, security issues) applied to master must also be applied to branch-1. The decision to port a feature from master to branch-1 is at the discretion of the contributor and committer. However no features that break backwards compatibility will be accepted on branch-1.

Requirements

Java 1.7 
Note: Hive versions 1.2 onward require Java 1.7 or newer. Hive versions 0.14 to 1.1 work with Java 1.6 as well. Users are strongly advised to start moving to Java 1.8 (see HIVE-8607). 
Hadoop 2.x (preferred), 1.x (not supported by Hive 2.0.0 onward). 
Hive versions up to 0.13 also supported Hadoop 0.20.x, 0.23.x. 
Hive is commonly used in production Linux and Windows environment. Mac is a commonly used development environment. The instructions in this document are applicable to Linux and Mac. Using it on Windows would require slightly different steps.



上面只是一些了解材料,我就从官方文档上贴了过来,下面进入正题。

1 下载解压

第一步当然是和老版本一样,在官网上下载Hive的最新的稳定版压缩包,在Linux系统下解压。如果你只使用这一个版本的Hive,可以把HIVE_HOME和其bin目录添加到环境变量PATH中去。安装过Hadoop的朋友对这个应该相当熟悉。像我的话,由于想要Hive 1.x和2.x一起使用,所以我没有配置环境变量,这样每次要使用Hive的时候就cd到对应的bin目录下执行就行了。



2 mysql metastore

Hive的元数据是需要一个关系型数据库保存的,它内置了一个deby,但是最好用的无疑还是MySQL,而且安装配置也简单。所以博主建议使用mysql。这一步的详细过程请参考博主的另一篇博文:http://blog.csdn.net/cds86333774/article/details/51132532

然后Hive要连接mysql啊,这个时候熟悉mysql的朋友就一定会意识到:哦!驱动!

对的,安装好mysql并配置好了之后,还要将连接mysql的驱动:mysql-connector-java-5.1.28.jar 拷贝到HiveHome 目录下的lib文件夹中,这样Hive才可能成功连接mysql。



3 配置hive-site.xml

在hive的目录下有一个conf文件夹,里面全是配置文件。

cp hive-default.xml.template hive-site.xml 
  • 1
  • 1

将模板复制并命名为 hive-site.xml,我们要做的配置就是在这个文件中修改一些参数。这一点也和Hadoop类似。

在这个文件中,查找到如下属性,然后修改其中的value到与你的主机相符的配置,例如mysql所在的主机? 端口一般都是3306;hive是用来存元数据的数据库名称;username和password要与你在上一步设置mysql时的一致:

    <property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://hadoop00: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>123</value>
<description>password to use against metastore database</description>
</property>

注意事项:

如果你在使用mysql之前启动过Hive,注意使用下面的命令将元数据同步到mysql,不然会报错:

schematool -dbType mysql -initSchema



4 错误1

错误1:忘记启动Hadoop集群了。



5 错误2

这个问题卡得我有点久,因为在百度上没有找到解决方案。后来在stackoverflow上找到了完美解答:

解决后反思一下,我发现自己有一个问题,就是很不喜欢认真看错误信息,其实只要认真看了错误信息,然后到hive-site.xml文件去找出特定字段,然后看description,是可以自己找出解决方案的。国内的网站上还没有出现这个问题的解答,是因为版本太新。而每当一个全新的问题出现,总有一些大牛可以为我们这些小白解决问题,而这种解决全新问题的能力也是我所欠缺的。简单总结为一句话,对我自己说的:【请认真分析错误信息,不要嫌麻烦,不要一遇到问题就百度,不要一看到别人贴出的解决方案,看都不看清楚就直接复制粘贴】。



6 成功

安装HIVE 过程中要注意

1,MySQL 是否正常运行

2.   创建好mysql 用户并分配好相应的访问权限以及数据库端口号等

3.   mysql-connector-java-5.1.26-bin.jar  是否放到hive/lib 目录下 建议修改权限为777 (chmod 777 mysql-connector-java-5.1.26-bin.jar)

4. 修改conf/hive-site.xml 中的 “hive.metastore.schema.verification”  值为 false  即可解决 “Caused by: MetaException(message:Version information not found in metastore. )”

5. 调试 模式命令  hive -hiveconf hive.root.logger=DEBUG,console

Hive2.x 版本的安装及配置 以及要注意的事项的更多相关文章

  1. Linux操作系统CentOS7.2发行版本的安装与配置(安装是选择服务器类型)

    原文地址:http://1130739.blog.51cto.com/1120739/1738791 由于CentOS 7出来不久,对于这个版本的系统安装与配置的教程较少,今天就索性介绍一下CentO ...

  2. mysql nonInstall 版本的安装与配置

    最近用到mysql,发现如果想使用最新版本64 bit mysql 需要独特的配置和使用方式 结合最近的研究总结一下安装过程. 首先下载:http://dev.mysql.com/downloads/ ...

  3. Mysql5.7版本编译安装及配置

    配置yum安装方式 1.配置本地yum源 vim /etc/yum.repos.d/rhel-source.repo [rhel-source] name=Red Hat Enterprise Lin ...

  4. MariaDB 在 Windows 下 noinstall 版本的安装和配置

    1. 下载并解压 noinstall 压缩包,假设解压到 D:\APP\mariadb-10.0.17-winx64 目录 下载地址(MariaDB 10.0.17 Stable):llarian.n ...

  5. MySql 5.7.20版本免安装版配置过程

    下载地址为: https://dev.mysql.com/downloads/mysql/ 最下面根据自己的操作系统选择合适的型号 下载完以后解压缩到自定义的路径.这里注意的是路径中不要存在中文. 解 ...

  6. Ubuntu 18.04 LTS版本 GoldenDict安装与配置

    为何安装? GoldenDict是一款Linux下很好用的词典软件,其具有的关于词典的裁剪功能使得用户能够方便地对各种词典进行添加或删除,其具有的屏幕取词功能能够帮助用户方便地进行翻译,其具有的网络源 ...

  7. ceph mimc版本ceph-deploy安装与配置

    系统环境centos7.6 内核5.0.9 YUM源配置 [root@k8s-sys-10-82-4-200 ceph-cluster]# cat /etc/yum.repos.d/ceph.repo ...

  8. 【Apache】2.4.6版本的安装和配置

  9. 简单安装与配置mysql数据库(绿色版)

    目录 绿色版下载 mysql绿色版(5.7版本的安装与配置) 绿色版下载: mysql官网下载地址:https://www.oracle.com/index.html mysql绿色版(5.7版本的安 ...

随机推荐

  1. VSAM:视频监控系统 A System for Video Surveillance and Monitoring

    VSAM(VideoSurveillance and Monitoring)视频监控系统 Robotics Institute CMU 1:引言 2:试验床介绍 3:基本的视频分析算法:运动目标检测, ...

  2. Codeforces Round #286 (Div. 2) B 并查集

    B. Mr. Kitayuta's Colorful Graph time limit per test 1 second memory limit per test 256 megabytes in ...

  3. Ubuntu 使用Compiz配置炫酷3D桌面

    先看一下效果 要实现这种3D 的效果其实很简单. Step 1:安装N卡驱动工具 sudo apt- 这个东西其实没有太大的作用. Step 2:安装Compiz sudo apt-get insta ...

  4. bzoj 4332: JSOI2012 分零食 快速傅立叶变换

    题目: Description 同学们依次排成了一列,其中有A位小朋友,有三个共同的欢乐系数O,S和U.如果有一位小朋友得到了x个糖果,那么她的欢乐程度就是\(f(x)=O*x^2+S*x+U\) 现 ...

  5. TCP粘包处理

    TCP(transport control protocol,传输控制协议)是面向连接的,面向流的,提供高可靠性服务.收发两端(客户端和服务器端)都要有一一成对的socket, 因此,发送端为了将多个 ...

  6. bzoj 2530 [Poi2011]Party 构造

    2530: [Poi2011]Party Time Limit: 10 Sec  Memory Limit: 128 MBSec  Special JudgeSubmit: 364  Solved:  ...

  7. Qt ------ 获取 wifi 信息

    QProcess:可以调用外部进程 netsh wlan show interfaces:可以查看连接哪个wifi netsh wlan show networks:显示所有可用的wifi netsh ...

  8. python基础之装饰器(实例)

    1.必备 #### 第一波 #### def foo(): print 'foo' foo #表示是函数 foo() #表示执行foo函数 #### 第二波 #### def foo(): print ...

  9. Covariance 协方差分析

    sklearn实战-乳腺癌细胞数据挖掘 https://study.163.com/course/introduction.htm?courseId=1005269003&utm_campai ...

  10. OpenCV---色彩空间(二)HSV追踪颜色对象和通道分离与合并

    一:HSV追踪有颜色对象 def inRange(src, lowerb, upperb, dst=None) #lowerb是上面每个颜色分段的最小值,upperb是上面每个颜色分段的最大值,都是列 ...