当前位置:   article > 正文

Ubuntu22.04安装Hive3.1.2 metastore远程模式部署MySQL8.0.34_ubuntu安装配置hive3.1.2

ubuntu安装配置hive3.1.2

目录

前言:

1.安装MySQL

2.安装Hive

(1)配置环境变量

(2)配置hive-site.xml

(3)配置Hadoop的core-site.xml文件

(4)重点!将Hive中的Jdbc驱动更换

(5)初始化元数据库

3.启动Hive

一点小补充

为root用户授权远程登录


前言:

博主使用的环境是Ubuntu22.04 Hive3.1.2 MySQL8.0.34 hadoop3.3.0

由于Ubuntu20安装不了MySQL5,且MySQL5于MySQL8版本之间有极大的不兼容性,因此应该使用MySQL8的连接方式来连接Hive和MySQL,其中包括更换Hive jdbc驱动与更改数据源驱动类

1.安装MySQL

首先应该明确一点:Ubuntu从18版本开始就与MySQL5.7不相兼容了,使用Ubuntu22.04只能安装MySQL8以上的版本

博主这里安装的是8.0.34

安装MySQL前请安装MySQL的两个依赖库,保证安装顺利

sudo apt install -y libmecab2
sudo apt install -y libaio1

安装MySQL

sudo apt update
sudo apt install mysql-server

安装过程设置root密码,如直接跳过密码设置过程导致root为空密码登录建议安装tar包版本MySQL

启动MySQL服务

sudo service mysql start

关闭MySQL服务(以下过程请不要随意停止MySQL服务,请保持MySQL服务开启状态)

sudo service mysql stop

登录MySQL

mysql -u root -p

输入之前设置好的密码

出现mysql>

即为安装成功

安装tar包版本MySQL请移步以下文章,博主亲测有用

http://t.csdnimg.cn/8qaxc

进入MySQL后创建hive数据库

create database hive;

查看数据库

show databases;

出现名为hive的数据库即可

2.安装Hive

hive安装包解压到对应目录下即可,博主的安装路径是/usr/local/apache-hive-3.1.2-bin

(1)配置环境变量

sudo gedit ~/.bashrc

在打开的文件中添加以下环境变量

  1. export HIVE_HOME=/usr/local/apache-hive-3.1.2-bin
  2. export PATH=$PATH:$HADOOP_HOME/sbin:$HIVE_HOME/bin

刷新环境变量

source ~/.bashrc

(2)配置hive-site.xml

打开apache-hive-3.1.2-bin/conf/hive-site.xml文件(没有就自己创建)

在文件中添加以下配置,注意要放在<configuration></configuration>这两个标签之间

由于我们要连接的数据库是MySQL8,因此数据源驱动类需要加.cj-->  com.mysql.cj.jdbc.Driver

注意在xxxxx处修改为自己的MySQL密码

  1. <property>
  2. <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExsit=true;characterEncoding=UTF-8</value>
  3. </property>
  4. <property>
  5. <name>javax.jdo.option.ConnectionDriverName</name>
  6. <value>com.mysql.cj.jdbc.Driver</value>
  7. </property>
  8. <property>
  9. <name>javax.jdo.option.ConnectionUserName</name>
  10. <value>root</value>
  11. </property>
  12. <property>
  13. <name>javax.jdo.option.ConnectionPassword</name>
  14. <value>xxxxx</value>
  15. </property>
  16. <property>
  17. <name>datanucleus.readOnlyDatastore</name>
  18. <value>false</value>
  19. </property>
  20. <property>
  21. <name>datanucleus.fixedDatastore</name>
  22. <value>false</value>
  23. </property>
  24. <property>
  25. <name>datanucleus.autoCreateSchema</name>
  26. <value>true</value>
  27. </property>
  28. <property>
  29. <name>datanucleus.autoCreateTables</name>
  30. <value>true</value>
  31. </property>
  32. <property>
  33. <name>datanucleus.autoCreateColumns</name>
  34. <value>true</value>
  35. </property>

(3)配置Hadoop的core-site.xml文件

在该文件中加入以下配置

  1. <property>
  2. <name>hadoop.proxyuser.root.hosts</name>
  3. <value>*</value>
  4. </property>
  5. <property>
  6. <name>hadoop.proxyuser.root.groups</name>
  7. <value>*</value>
  8. </property>

(4)重点!将Hive中的Jdbc驱动更换

由于Hive3.1.2默认的jdbc驱动是5.1.32,该驱动是用于连接MySQL5版本数据库,并不适用于MySQL8版本,因此应使用适用于MySQL8的mysql-connector-java-8.0.x.jar替换掉Hive的5.1.32驱动。

jdbc8.0下载地址MySQL :: Download MySQL Connector/J (Archived Versions)

博主使用的是mysql-connector-java-8.0.30.jar

将该jar包导入到apache-hive-3.1.2-bin/lib下,并将原有的mysql-connector-java-5.1.32.jar删除

(5)初始化元数据库

schematool -dbType mysql -initSchema

 如果出现权限不足的问题请移步-->http://t.csdnimg.cn/hjBM5

3.启动Hive

启动Hadoop

start-all.sh

启动hive

hive

出现权限不够的问题请移步-->http://t.csdnimg.cn/hjBM5

出现hive>

即为启动成功

使用sql访问hive

show databases;

访问成功

Hive安装完毕。

一点小补充

为root用户授权远程登录

登录mysql

mysql -u root -p

创建允许远程访问的用户

CREATE USER 'root'@'%' IDENTIFIED BY '密码';

为用户授权

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';

刷新权限

FLUSH PRIVILEGES;

退出mysql

EXIT;

修改MySQL配置文件

sudo gedit /etc/mysql/mysql.conf.d/mysqld.cnf

更改bind-address值(没有就自行添加)

bind-address = 0.0.0.0

重启MySQL服务

sudo systemctl restart mysql

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/507865
推荐阅读
相关标签
  

闽ICP备14008679号