准备环境: hadoop基础环境(3.1.3) Hive版本 3.1.2
下载地址:https://hive.apache.org/downloads.html
Hive3.X版本支持Hadoop3.X,Hive2.0版本支持Hadoop2.X
1、上传安装包,解压文件
tar -zxvf 对应包名
2、 创建软连接
ln -s apache-hive-1.2.2-bin hive
3、修改环境变量
vim ~/.bash_profile
修改完成使环境变量立即生效
source ~/.bash_profile
4、修改配置文件名
mv hive-env.sh.template hive-env.sh
5、进入该文件,配置hadoop路径与hive_conf路径
6、在hdfs上创建相关目录,附加相关权限
hdfs dfs -mkdir -p /user/hive/warehouse
hdfs dfs -mkdir /tmp
hdfs dfs -chmod g+w /tmp /user/hive/warehouse
7、启动hive(在此之前需要保证hdfs、yarn已启动)
这里需要注意
1)如果hadooplib中的相关jar包与hive中的jar包冲突会导致启动失败:相关问题见链接
http://www.bubuko.com/infodetail-3286965.html
2)执行查看库hql语句,一开始没有执行初始化库操作导致启动失败,hive存储元数据的默认库为derby。
https://blog.csdn.net/lz6363/article/details/95805446
初始化相关指令
schematool -dbType derby -initSchema
至此hive初步环境搭建完成。
8、更改hive存放元数据数据库为mysql,这里首先介绍mysql数据库的安装步骤
1)首先下载下载并安装MySQL官方的 Yum Repository
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
2)安装MySQL服务器
yum -y install mysql57-community-release-el7-10.noarch.rpm
3)启动mysql并查看mysql状态
systemctl start mysqld.service
systemctl status mysqld.service
显示active,启动成功。
4)查看初始密码
grep "password" /var/log/mysqld.log
5)登录mysql数据库并修改密码
mysql -uroot -p
这里需要注意的是,如果密码设置过于简单会报错
原因是因为MySQL有密码设置的规范,具体是与validate_password_policy的值有关:
修改一下密码规则
set global validate_password_policy=0;
set global validate_password_length=1;
此时在修改密码就可以了
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';
6)查看数据库
show databases;
9、 在hive/conf目录中创建文件 hive-site.xml
<configuration>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://172.16.25.27:3306/metastore?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>
10、下载mysql驱动包,将相关依赖jar包导入到/hive/lib文件夹下
下载地址:https://dev.mysql.com/downloads/file/?id=496585
mysql 5.7 用8.0版本的驱动可以,5.1版本也可以
配置完毕,启动Hive,收工。