安装说明
安装环境
虚拟机:VirtualBox-6.1.18
操作系统:Ubuntu16.04LTS
基础软件
JDK:jdk-8u281-linux-x64.tar.gz
hadoop:hadoop2.7.3
MySQL:Server version: 5.7.33-0ubuntu0.16.04.1 (Ubuntu)
集群情况:
主机名称 | Hadoop版本 | IP地址 |
---|---|---|
hadoop-master | 2.7.3 | 192.168.56.1 |
hadoop-slave1 | 2.7.3 | 192.168.56.2 |
hadoop-slave2 | 2.7.3 | 192.168.56.3 |
本次安装的Hive
Hive版本:3.1.2
下载地址:apache-hive-3.1.2-bin.tar.gz.
其他:Hive官网 、查看不同版本.
都准备就绪后,我们就接着往下开始安装吧!
不知道怎么准备的,我之前的文章 也许可以给你带来一些参考哦 - - - ☞ 传送门
开始安装
我的两个基础软件Hadoop、Java 分别是在/usr/hadoop 和 /usr/java下
其他的都安装在 ~/Hadoop 的文件夹下
Hive的安装仅在hadoop-master下安装即可,无需在slave机上部署
配置MySQL
没安装的直接用apt install
安装即可,一搜一大把
当前是root用户登录mysql
1.创建hadoop用户
grant all on *.* to hadoop@'%' identified by 'hadoop';
grant all on *.* to hadoop@'localhost' identified by 'hadoop';
grant all on *.* to hadoop@'hadoop-master' identified by 'hadoop';
// mysql> grant all on *.* to 'hadoop'@'%' identified by 'hadoop' with grant option;
2.刷新权限
flush privileges;
3.创建Hive数据库
create database hive
重启mysql服务:$ sudo service mysql restart
安装并配置Hive
1. 解压
$ cd ~/下载
$ cp apache-hive-3.1.2-bin.tar.gz ~/Hadoop
$ cd ~/Hadoop
$ tar -zxvf apache-hive-3.1.2-bin.tar.gz
$ mv apache-hive-3.1.2-bin hive-3.1.2
$ cd hive-3.1.2/conf
2. 配置
2.1 hive-env.sh
// 复制一份 hive-env.sh 的模版
$ cp hive-env.sh.template hive-env.sh
// hive-env.sh 将第48行注释去掉,改为
HADOOP_HOME=/usr/hadoop (你hadoop安装的位置)
2.2 hive-site.xml
// 创建一个新文件 hive-site.xml
$ gedit hive-site.xml
// 添加以下内容
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>hive.metastore.local</name>
<value>true</value>
</property>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://192.168.56.1:3306/hive?createDatabaseIfNotExist=true&characterEncoding=UTF-8&serverTimezone=GMT</value>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>hadoop</value>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>hadoop</value>
</property>
<property>
<name>datanucleus.schema.autoCreateAll</name>
<value>true</value>
</property>
<property>
<name>hive.metastore.schema.verification</name>
<value>false</value>
</property>
</configuration>
// 注意这里本机(hadoop-master)的ip是192.168.56.1
// 连接mysql时用的hadoop用户和密码
2.3 环境变量
// 这里直接是 /etc/profile,当然你也可以加到 .bash_profile 下也行
$ sudo gedit /etc/profile
// 然后在里面加入下面两句
export HIVE_HOME=/home/xld/Hadoop/hive
export PATH=$HIVE_HOME/bin:$PATH
// 保存并退出,然后使其生效
$ source /etc/profile
3. 导入mysql-connector
直接将mysql-connector的jar包丢到 ~/Hadoop/hive-3.1.2/lib
目录下就好了
这里用的是 mysql-connector-java-5.1.27-bin.jar,当然很多版本都可以啦,支持当前mysql版本都行
下载地址:mysql-connector-java-5.1.27.tar.gz
4. 启动hive
$ cd
$ hive
// 成功进入到hive页面后
hive> show databases;
成功启动
其他错误
1. hive启动Failed to get schema version报错
推荐参考:hive安装Failed to get schema version报错
解决方法:注释掉 /etc/mysql/mysql.conf.d/mysqld.cnf 里面的这一句 bind-address = 127.0.0.1
2. 显示有“拒绝连接”
推荐参考:Exception in thread “main” java.lang.RuntimeException: java.net.ConnectException错误问题
解决方法:启动Hadoop集群