进阶4:hive 安装
安装包:
apache-hive-2.1.1-bin.tar.gz
安装步骤:
1.上传 apache-hive-2.1.1-bin.tar.gz 到linux;
2.解压文件:
tar zxvf apache-hive-2.1.1-bin.tar.gz
3.安装mysql (仅支持mysql 5.7以下版本,不支持5.7或更高版本,原因:若采用高版本mysql,部分文档内容需要改写)
sudo yum install mysql-server
4. 安装 mysql connector
sudo yum install mysql-connector-java
该命令会在/usr/share/java/下产生mysql-connector-java.jar
5. 建立链接
ln -s /usr/share/java/mysql-connector-java.jar /usr/local/hadoop-soft/etc/hive-2.1.1/lib/mysql-connector-java.jar
该命令在hive安装目录的lib目录下建立软链接,指向/usr/share/java/mysql-connector-java.jar
6. 启动mysql
sudo service mysqld start
可通过以下命令验证mysql启动成功(显示mysql进程):
ps aux | grep mysql
7. 修改mysql密码 , 修改mysql密码(改为newpass,请根据需要自行替换newpass)
mysql> use mysql;
mysql> UPDATE user SET Password = PASSWORD('newpass') WHERE user = 'root';
mysql> FLUSH PRIVILEGES;
允许用户root通过任意机器访问mysql:
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'newpass' WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES;
8. 进入到根目录,配置环境变量:
vim ~/.bash_profile
export HIVE_HOME=/usr/local/hadoop-soft/etc/hive-2.1.1
export PATH=$HIVE_HOME/bin:$PATH
运行生效:
source ~/.bash_profile
9. 配置hive
a.进入目录:
cd /usr/local/hadoop-soft/etc/hive-2.1.1/conf
b. 新建 并 编辑 hive-site.xml
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>hive.metastore.uris</name>
<value>thrift://master:9083</value>
</property>
<property>
<name>hive.server2.thrift.port</name>
<value>10000</value>
</property>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://master/metastore?createDatabaseIfNotExist=true</value>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>root</value>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>root</value>
</property>
<property>
<name>hive.metastore.schema.verification</name>
<value>false</value>
</property>
<property>
<name>hive.metastore.warehouse.dir</name>
<value>/usr/local/hadoop-soft/etc/hive-2.1.1/warehouse</value>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
<property>
<name>datanucleus.autoCreateSchema</name>
<value>true</value>
</property>
<property>
<name>datanucleus.autoStartMechanism</name>
<value>SchemaTable</value>
</property>
<property>
<name>datanucleus.schema.autoCreateTables</name>
<value>true</value>
</property> <property>
<name>beeline.hs2.connection.user</name>
<value>master</value>
</property>
<property>
<name>beeline.hs2.connection.password</name>
<value>master</value>
</property>
</configuration>
注意 :
1. hive.metastore.uris中的“bigdata“含义为metastore server所在的机器(启动metastore的方法见下一节)
2. javax.jdo.option.ConnectionURL中的“bigdata”为mysql安装机器的hostname
3. javax.jdo.option.ConnectionUserName和javax.jdo.option.ConnectionPassword分别为mysql的访问用户和密码,可通过以下命令验证是否有效(期中bigdata为javax.jdo.option.ConnectionURL中配置的地址,xxx为mysql用户名):
mysql –h bigdata-u xxx –p
4. fs.defaultFS为HDFS的namenode启动的机器地址
5. beeline.hs2.connection.user和beeline.hs2.connection.password是beeline方式访问的用户名和密码,可任意指定,但在beeline访问时要写入你指定的这个(具体参考最后一部分)
10.如果是第一次启动hive,需要执行初始化命令
schematool -dbType mysql -initSchema
注意:仅在第一次启动hive时,运行该命令,以后则只需直接启动metastore和hiveserver
11. 启动metastore
nohup hive --service metastore >> /usr/local/hadoop-soft/etc/hive-2.1.1/metastore.log 2>&1 &
12. 启动hive server
nohup hive --service hiveserver2 >> /usr/local/hadoop-soft/etc/hive-2.1.1/hiveserver.log 2>&1 &
13. 查看hive metastore和hiveserver2是否启动成功
ps aux | grep hive
能输出两个进程,分别对应metastore和hiveserver2.
14. Hive常见两种访问方式
a.不建议使用 hive ,已经被淘汰
b. 建议使用 beeline
15. 修改hadoop 安装目录下 ,core-site.xml 文件
比如要用root 用户启动 hive server2和hive metastore,则增加配置:
<property>
<name>hadoop.proxyuser.root.groups</name>
<value>*</value>
</property> <property>
<name>hadoop.proxyuser.root.hosts</name>
<value>*</value>
</property>
16. 之后输入以下命令发起一个连接:
!connect jdbc:hive2://master:10000/default master master
其中master 和master 分别是在hive-site.xml配置文件中由beeline.hs2.connection.user和beeline.hs2.connection.password设置的。
注:如果要使用beeline或JDBC连接hive时,遇到报错:“User: xxx is not allowed to impersonate yyy”,需在hadoop的配置文件core-site.xml中加入以下配置(其中红色标志的“xxx”是你启动hive server2和hive metastore所采用的用户,
用户名中不要包含“.”,比如“cheng.dong”是不支持的),并重启hiveserver2, hive metastore,HDFS和YARN:
进阶4:hive 安装的更多相关文章
- HIVE安装配置
Hive简介 Hive 基本介绍 Hive 实现机制 Hive 数据模型 Hive 如何转换成MapReduce Hive 与其他数据库的区别 以上详见:https://chu888chu888.gi ...
- Linux环境Hive安装配置及使用
Linux环境Hive安装配置及使用 一.Hive Hive环境前提 二.Hive架构原理解析 三.Hive-1.2.2单机安装流程 (1) 解压apache-hive-1.2.2-bin.tar.g ...
- Hive安装配置指北(含Hive Metastore详解)
个人主页: http://www.linbingdong.com 本文介绍Hive安装配置的整个过程,包括MySQL.Hive及Metastore的安装配置,并分析了Metastore三种配置方式的区 ...
- hive安装--设置mysql为远端metastore
作业任务:安装Hive,有条件的同学可考虑用mysql作为元数据库安装(有一定难度,可以获得老师极度赞赏),安装完成后做简单SQL操作测试.将安装过程和最后测试成功的界面抓图提交 . 已有的当前虚拟机 ...
- Hive安装与部署集成mysql
前提条件: 1.一台配置好hadoop环境的虚拟机.hadoop环境搭建教程:稍后补充 2.存在hadoop账户.不存在的可以新建hadoop账户安装配置hadoop. 安装教程: 一.Mysql安装 ...
- 【转】 hive安装配置及遇到的问题解决
原文来自: http://blog.csdn.net/songchunhong/article/details/51423823 1.下载Hive安装包apache-hive-1.2.1-bin.ta ...
- Hadoop之hive安装过程以及运行常见问题
Hive简介 1.数据仓库工具 2.支持一种与Sql类似的语言HiveQL 3.可以看成是从Sql到MapReduce的映射器 4.提供shall.Jdbc/odbc.Thrift.Web等接口 Hi ...
- Hive安装与配置详解
既然是详解,那么我们就不能只知道怎么安装hive了,下面从hive的基本说起,如果你了解了,那么请直接移步安装与配置 hive是什么 hive安装和配置 hive的测试 hive 这里简单说明一下,好 ...
- hive安装详解
1.安装MYSQL simon@simon-Lenovo-G400:~$ sudo apt-get install mysql-server simon@simon-Lenovo-G400:~$ su ...
随机推荐
- python+selenium元素定位之XPath学习01
参考文档1:https://www.w3school.com.cn/xpath/xpath_syntax.asp 参考文档2:https://www.runoob.com/xpath/xpath-tu ...
- 第四周课程总结&第二次实验报告
实验二 Java简单类与对象 实验目的 掌握类的定义,熟悉属性.构造函数.方法的作用,掌握用类作为类型声明变量和方法返回值: 理解类和对象的区别,掌握构造函数的使用,熟悉通过对象名引用实例的方法和属性 ...
- windows10下安装pygame并验证成功
首先要确保网络正常 py -m pip install --upgrade pip python -m pip install pygame --user 然后进行验证: py -m pygame.e ...
- (3.5)常用知识-NULL与零长度、字符串尾部填充空格
概述:NULL与零长度是不同的,NULL表示数据未知或不可用,它是与零(数值或2进制).零长度字符串不 同的一种值,也可以理解为一种状态. 即可以理解为:所有的变量都有2种状态,一种有值,一种为NUL ...
- [BZOJ 3509] [CodeChef] COUNTARI (FFT+分块)
[BZOJ 3509] [CodeChef] COUNTARI (FFT+分块) 题面 给出一个长度为n的数组,问有多少三元组\((i,j,k)\)满足\(i<j<k,a_j-a_i=a_ ...
- HDU 1231 题解
题面: 最大连续子序列 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Problem ...
- mongodb启动报错,child process failed, exited with error number 1
error: child process failed, exited with error number 1 第一次安装mongodb,随后启动一般不会出现上面的错误,出现这种错误的原因一般是mon ...
- 自定义ajax函数(仿照jQuery)
AJAX介绍 AJAX = 异步 JavaScript 和 XML. 全称:Asynchronous Javascript And XML: AJAX 是一种用于创建快速动态网页的技术. 通过在后台与 ...
- Android数据库使用指南(上)
前言Android上的数据库是sqlite,虽然这个数据库是轻量级的,但是储存的东西可不少,sqlite官方表示理论存储容量为140TB,目前应该没有那么大容量的手机,存储能力太强了. 关于如何使用S ...
- python3-使用模块
Python本身就内置了很多非常有用的模块,只要安装完毕,这些模块就可以立刻使用. 我们以内建的sys模块为例,编写一个hello的模块: #!/usr/bin/env python3 # -*- c ...