hive环境配置(linux)
hive环境配置(linux)
系统环境:centos7
数据库:MySQL5.7
hive:apache-hive-3.1.2
下载地址:https://dlcdn.apache.org/hive/hive-3.1.2/
hadoop:hadoop-3.3.0(配置参考上一篇笔记)
1、安装配置mysql
卸载系统自带的mariadb数据库(不卸载安装mysql过程中会出现依赖问题)
rpm -qa | grep -i mariadb
rpm -e --nodeps mariadb-libs-5.5.64-1.el7.x86_64
rpm -qa | grep mysql
将mysql-5.7.37-1.el7.x86_64.rpm-bundle.tar上传到软件安装目录
解压
tar -xvf mysql-5.7.37-1.el7.x86_64.rpm-bundle.tar
安装
yum install mysql-community-{libs,client,common,server}-*.rpm
出现选项,输入y
启动mysql服务
systemctl start mysqld
更改MySQL服务的数据编码
vi /etc/my.cnf
最下面一行加入
character-set-server=utf8
重新启动服务
systemctl restart mysqld
显示mysql日志
cat /var/log/mysqld.log
查看mysql临时密码
grep -i "temporary password" /var/log/mysqld.log
登录mysql,用临时密码登录
mysql -uroot -p
然后输入密码
进入数据库后,更改密码,不然无法进行操作
更改密码前,先更改mysql密码安全级别,默认长度
set global validate_password_policy=0;
set global validate_password_length=4;
然后更改mysql密码
alter user root@localhost identified by '123456';
然后测试MySQL语句能否使用
show databases;
成功后输入:exit;退出mysql
然后重新登录,输入新密码,登录成功
给root用户所有权限,这样就可以在客户端进行修改
grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
flush privileges;
注意:如果还是出现客户端无法连接请关闭防火墙!!!
关闭防火墙
systemctl stop firewalld.service
禁用防火墙
systemctl disable firewalld.service
查看当前状态(出现dead表示成功)
systemctl status firewalld.service
2、安装配置hive
将apache-hive-3.1.2-bin.tar.gz安装包上传服务器
将文件解压到/export/server/目录
cd /export/server
tar -zxvf apache-hive-3.1.2-bin.tar.gz
解决hive与hadoop之间guava版本差异
cd /export/server/apache-hive-3.1.2-bin/
rm -rf lib/guava-19.0.jar
cp /export/server/hadoop-3.3.0/share/hadoop/common/lib/guava-27.0-jre.jar ./lib/
进入到/export/server/apache-hive-3.1.2-bin/conf/目录
cd /export/server/apache-hive-3.1.2-bin/conf/
修改hive-env.sh配置文件
cp hive-env.sh.template hive-env.sh
vim hive-env.sh
添加以下内容
export HADOOP_HOME=/export/server/hadoop-3.3.0
export HIVE_CONF_DIR=/export/server/apache-hive-3.1.2-bin/conf
export HIVE_AUX_JARS_PATH=/export/server/apache-hive-3.1.2-bin/lib
配置元数据库信息
vim hive-site.xml
添加以下内容
<configuration> <!-- 配置连接串 --> <property> <name>javax.jdo.option.ConnectionURL</name> <!-- 数据库名称:hive --> <!-- createDatabaseIfNotExist=true:当数据库不存在的时候,自动帮你创建 --> <value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true&characterEncoding=UTF-8&useSSL=false</value> </property> <!-- mysql的driver类 --> <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>123456</value> </property> </configuration>
数据库和hive安装完成后,将mysql连接jar包上传到/export/server/apache-hive-3.1.2-bin/lib目录下
初始化元数据
bin/schematool -initSchema -dbType mysql -verbos
配置hive环境变量
vim /etc/profile
添加以下内容
export HIVE_HOME=/export/server/apache-hive-3.1.2-bin
export PATH=$PATH:$HIVE_HOME/bin
重新加载配置文件
source /etc/profile
输入hive,hive启动成功后就会出现 hive> 这个符号,我们就可以开始测试hive了