centos7上hive3.1.3安装及配置

1、安装背景;

hive是基于hadoop的数据仓库软件,部署运行在linux系统之上,安装之前必须保证hadoop环境运行正常,hive本身不是分布式软件,它的分布式主要是借助hadoop实现,存储是hdfs,计算是mapreduce。

需要同时安装apache-hive-3.1.3-bin.tar.gz和mysql-5.7.42-1.el7.x86_64.rpm-bundle.tar两个软件,因为hive的建表元数据需要保存到数据库中,共74张表,一般用mysql。

2、配置mysql;

Hive 允许将元数据存储于本地或远程的外部数据库中,这种设置可以支持 Hive 的多会话生产环
境,在本案例中采用 MySQL 作为 Hive 的元数据存储库。

(1)先卸载centos7自带的mariadb数据库, 因为mariadb5.5版本与hive3.x存在兼容性问题。

# 查找centos7中是否有自带的mariadb数据库
rpm -qa|grep mariadb

# mariadb-libs-5.5.64-1.el7.x86_64

#卸载
rpm -e mariadb-libs-5.5.64-1.el7.x86_64 --nodeps

centos7上hive3.1.3安装及配置_第1张图片

(2)上传mysql-5.7.42-1.el7.x86_64.rpm-bundle.tar并解压;

centos7上hive3.1.3安装及配置_第2张图片

此处用“tar -zxvf mysql-5.7.42-1.el7.x86_64.rpm-bundle.tar -C /opt/server/mysql/”命令,会解压失败。

centos7上hive3.1.3安装及配置_第3张图片

应该使用“tar xvf mysql-5.7.42-1.el7.x86_64.rpm-bundle.tar -C /opt/server/mysql/”,如下图;

centos7上hive3.1.3安装及配置_第4张图片

(3)安装mysql5.7;

①安装必要的依赖包;

此处是在系统根目录安装,其他位置应该也可以。

# 安装依赖
yum -y install libaio
yum -y install libncurses*
yum -y install perl perl-devel

centos7上hive3.1.3安装及配置_第5张图片

centos7上hive3.1.3安装及配置_第6张图片

centos7上hive3.1.3安装及配置_第7张图片

②安装mysql;

切换目录到“cd opt/server/mysql/”,执行下面四条命令;

# 安装mysql
rpm -ivh mysql-community-common-5.7.42-1.el7.x86_64.rpm 
rpm -ivh mysql-community-libs-5.7.42-1.el7.x86_64.rpm 
rpm -ivh mysql-community-client-5.7.42-1.el7.x86_64.rpm 
rpm -ivh mysql-community-server-5.7.42-1.el7.x86_64.rpm

centos7上hive3.1.3安装及配置_第8张图片

安装net-tools依赖包;

yum -y install net-tools.x86_64

centos7上hive3.1.3安装及配置_第9张图片

安装mysql-community-server.xxxxx.rpm;

rpm -ivh mysql-community-server-5.7.42-1.el7.x86_64.rpm

centos7上hive3.1.3安装及配置_第10张图片

(4)启动mysql;

# 启动mysql
systemctl start mysqld
#查看生成的临时root密码
cat /var/log/mysqld.log | grep password

centos7上hive3.1.3安装及配置_第11张图片

2023-09-05T03:19:52.654819Z 1 [Note] A temporary password is generated for root@localhost: pRyujui?H9gD

(5)修改初始密码;

# 登录mysql
mysql -u root -p
Enter password:     #输入在日志中生成的临时密码

# 更新root密码 设置为sql2023
set global validate_password_policy=0;
set global validate_password_length=1;
set password=password('sql2023');

(6)远程授权;

# 其中 *.*代表对所有表进行授权;‘root’ 代表 root 用户;‘%’ 代表所有的外部 IP;‘sql2023’ 代表自己设置的用户密码。
grant all privileges on *.* to 'root' @'%' identified by 'sql2023';

# 刷新
flush privileges;

centos7上hive3.1.3安装及配置_第12张图片

centos7上hive3.1.3安装及配置_第13张图片

退出mysql命令:"exit"

centos7上hive3.1.3安装及配置_第14张图片

(7)相关命令;

#mysql的启动和关闭 状态查看
systemctl stop mysqld
systemctl status mysqld
systemctl start mysqld

#建议设置为开机自启动服务
systemctl enable mysqld

#查看是否已经设置自启动成功
systemctl list-unit-files | grep mysqld

centos7上hive3.1.3安装及配置_第15张图片

3、Hive安装和配置;

(1)上传hive安装包apache-hive-3.1.3-bin.tar.gz和mysql_jdbc驱动包mysql-connector-java-5.1.38.jar;

centos7上hive3.1.3安装及配置_第16张图片

centos7上hive3.1.3安装及配置_第17张图片

(2)解压hive安装包;

命令“tar -zxvf apache-hive-3.1.3-bin.tar.gz -C /opt/server/”;

centos7上hive3.1.3安装及配置_第18张图片

centos7上hive3.1.3安装及配置_第19张图片

(3)添加mysql_jdbc驱动到hive安装包lib目录下;

centos7上hive3.1.3安装及配置_第20张图片

(4)修改hive-env.sh,加入hadoop安装路径;

# 进入conf目录
[root@server apache-hive-3.1.3-bin]# cd ./conf

# 生成hive-env.sh文件
cp hive-env.sh.template hive-env.sh

#编辑hive-env.sh信息
vim hive-env.sh

centos7上hive3.1.3安装及配置_第21张图片

# 加入hadoop路径
HADOOP_HOME=/opt/server/hadoop-3.3.1

centos7上hive3.1.3安装及配置_第22张图片

(5)新建 hive-site.xml 文件,内容如下,主要是配置存放元数据的 MySQL 的地址、驱动、用户名和密码等信息;

vim hive-site.xml

centos7上hive3.1.3安装及配置_第23张图片




    
    
        javax.jdo.option.ConnectionURL
         jdbc:mysql://server:3306/hive?createDatabaseIfNotExist=true&useSSL=false&useUnicode=true&characterEncoding=UTF-8
    
    
        javax.jdo.option.ConnectionDriverName
        com.mysql.jdbc.Driver
    
    
        javax.jdo.option.ConnectionUserName
        root
    
    
        javax.jdo.option.ConnectionPassword
        sql2023
    

centos7上hive3.1.3安装及配置_第24张图片

(6)hive2j及以上版本,必须手动初始化元数据库;

# 进入bin目录
cd /opt/server/apache-hive-3.1.2-bin/bin

# 初始化元数据库命令
./schematool -dbType mysql -initSchema

centos7上hive3.1.3安装及配置_第25张图片

centos7上hive3.1.3安装及配置_第26张图片

centos7上hive3.1.3安装及配置_第27张图片

(7)添加hive环境变量;

#Hive
export HIVE_HOME=/opt/server/apache-hive-3.1.3-bin
export PATH=$PATH:${HIVE_HOME}/bin

centos7上hive3.1.3安装及配置_第28张图片centos7上hive3.1.3安装及配置_第29张图片

刷新,使其生效;

source ./etc/profile

centos7上hive3.1.3安装及配置_第30张图片

(8)启动hive,测试功能;

# 连接hive
hive


# 创建数据库
create database test;
# 列出所有数据库
show databases;
# 切换数据库
use test;


# 建表
create table tb1(id int,name varchar(64));
# 插入一条数据
insert into table tb1 values(1,"wang");
# 查询表数据
select * from tb1;

centos7上hive3.1.3安装及配置_第31张图片centos7上hive3.1.3安装及配置_第32张图片centos7上hive3.1.3安装及配置_第33张图片

YARN有MapReduce程序执行;

centos7上hive3.1.3安装及配置_第34张图片

centos7上hive3.1.3安装及配置_第35张图片

退出hive命令:"exit;"

centos7上hive3.1.3安装及配置_第36张图片

你可能感兴趣的:(hive,数据仓库,mysql)