赞
踩
hive的tar包下载地址:
链接:https://pan.baidu.com/s/1m3VKT2-kIgR1QyjmfnWvGw?pwd=r45r
提取码:r45r
mysql的tar包:
链接:https://pan.baidu.com/s/1--s1m3hfNNKEVGkFEqi5iA?pwd=b7h4
提取码:b7h4
由于hive的元数据是存放在mysql当中的,所有在安装hive之前,需要将mysql的环境在虚拟机上提前安装好,如果没有安装mysql环境的这里也给出了mysql的安装目录和mysql的tar包。
1.解压并安装Hive并将名字修改为hive3.1.2
mv apache-hive-3.1.2 hive3.1.2
2.安装配置MySQL 十五个步骤
(1)下载mysql安装包,然后上传mysql安装包到Linux服务器的/home/hadoop/software目录下
- mv /home/hadoop/software/mysql-5.7.37-linux-glibc2.12-x86_64.
- tar.gz /home
(2)检查自己的虚拟机是否已经安装了MySQL
yum list installed | grep mysql
(3)卸载CentOS6.5自带的MySQL(没有就不用执行这一步)
yum remove mysql mysql-ql-libs.x86_64
注意:当时在这里删除自带的MySQL的时候报错
- A.修改 /etc/yum.repos.d 中的 CentOS-Base.repo
- B.注释所有的 mirrorlist= #mirrorlist=
- C.取消所有的 baseurl 注释
- D.将 baseurl 中的mirrorlist.centos.org 改为 vault.centos.org
- 修改过后成功删除系统自带的MySQL!!!
(4)解压mysql安装包 并重新起名为mysql5.7 方便配置环境变量
- cd /home
- tar -zxvf mysql-5.7.37-linux-glibc2.12-x86_64.tar.gz
- mv mysql-5.7.37-linux-glibc2.12-x86_64 mysql5.7
(5)在mysql目录下面创建data目录
mkdir /home/mysql5.7/data
(6)创建mysql的用户组和用户,并且给mysql5.7目录设置用户组和用户
- cd /home
- groupadd mysql
- useradd mysql -g mysql
- cd mysql5.7
- chown -R mysql .
- chgrp -R mysql .
- //注意这儿的.必须要,否则会报错。
(7)配置my.cnf文件
nano /etc/my.cnf
添加内容如下:
- [mysqld]
- basedir=/home/mysql5.7
- datadir=/home/mysql5.7/data
- port=3306
- [client]
- default-character-set=utf8
- [mysql]
- default-character-set=utf8
(8)修改/etc/selinux/config文件配置
nano /etc/selinux/config
(9)创建sock文件目录
- mkdir -p /var/lib/mysql
- cd /home/mysql5.7
- chown mysql:mysql /var/lib/mysql
(10)配置mysql环境变量
vim /etc/profile
添加如下内容:
- export MYSQL_HOME=/home/mysql5.7
- export PATH=$MYSQL_HOME/bin:$PATH
(11)初始化mysql,下面一行代码
mysqld --user=mysql --basedir=/home/mysql5.7 --datadir=/home/mysql5.7/data --initialize
(12)启动mysql服务器
- /home/mysql5.7/support-files/mysql.server restart
- /home/mysql5.7/support-files/mysql.server stop
- /home/mysql5.7/support-files/mysql.server start
(13)检查mysql服务是否正常
ps -ef | grep mysql
(14)登陆mysql
mysql -u root -p
(15)需要注意的是,刚安装的mysql,不能直接使用,需要修改初始密码
set password=password("123456");
注:在启动MySQL的过程当中,出现了一个错误就。是因为权限不够的原因;
解决办法:
将我们的安装的MySQL
Chmod 755 mysql5.7 就解决了问题
现在才开始配置Hive的环境
3.解压并安装 Hive 使用下面的命令,解压Hive 安装包:
并且改名为hive3.1.2
- cd /home/hadoop/software/
- tar -zxvf apache-hive-3.1.2-bin.tar.gz
- mv apache-hive-3.1.2-bin hive3.1.2
- cd hive3.1.2
4.启动MySQL 服务:
- /home/mysql5.7/support-files/mysql.server restart
- /home/mysql5.7/support-files/mysql.server stop
- /home/mysql5.7/support-files/mysql.server start
5.然后创建myhive 用户:
- grant all on *.* to myhive@'%' identified by '123456';
- grant all o.* to myhive@'master' identified by '123456';
- flush privileg
6.创建数据库:
create database myhive;
输入命令退出MySQL:
quit;
7.配置Hive
切换到以下目录:
cd /home/hadoop/software/hive3.1.2/conf
然后再该目录下创建一个新文件hive-site.xml,然后配置hive-site.xml 文件
8.然后再该目录下创建一个新文件hive-site.xml,然后配置 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://HadoopMaster:3306/hive01?characterEncoding=UTF-8</value>
- </property>
- <property>
- <name>javax.jdo.option.ConnectionDriverName</name>
- <value>com.mysql.jdbc.Driver</value>
- </property>
- <property>
- <name>javax.jdo.option.ConnectionUserName</name>
- <value>myhive</value>
- </property>
- <property>
- <name>javax.jdo.option.ConnectionPassword</name>
- <value>123456</value>
- </property>
- </configuration>
9.使用下面的命令打开配置:
nano /home/hadoop/.bash_profile
将下面两行配置环境变量:
- export HIVE_HOM E=/home/hadoop/software/hive3.1.2
- export PATH=$HIVE_HOME/bin:$
10,启动hive
进入hive 安装主目录
hive
启动过程当中有以下错误:
A.因为MySQL和hive的guava.jar版本不统一
解决方法:把hadoop里的复制到hive里同时删掉hive里面的guava.jar包
Hadoop存放位置:
cd hadoop-3.2.2/share/hadoop/common/lib
Hive存放位置:
/home/hadoop/software/hive3.1.2/lib
然后直接复制过去就行
cp -r guava-27.0-jre.jar /root/apache-hive-3.1.2-bin/lib
B.是因为我没有启动我的hadoop的集群报出如下错误:
解决办法:
使用start-all.sh启动集群就好了。
C.第三个报错是因为权限不够,我的hive使用Hadoop用户安装的,所以切换到Hadoop用户启动hive就好了。
D.第四个报错是因为我的hive没有初始化出现的报错
解决办法:退出hive重新初始化就好了
schematool -dbType mysql -initSchema
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。