ToB企服应用市场:ToB评测及商务社交产业平台

标题: Hive安装设置(容器环境)大数据职业技能竞赛 [打印本页]

作者: 宝塔山    时间: 2025-1-13 05:03
标题: Hive安装设置(容器环境)大数据职业技能竞赛
Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转换为MapReduce使命进行运行。

提前准备MySQL服务

看这篇文章MySQL-5.7数据库离线安装
环境说明:
  
  1. 服务端登录地址详见各任务服务端说明。
  2. 补充说明:宿主机可通过Asbru工具或SSH客户端进行SSH访问;
  3. 相关软件安装包在宿主机的/opt目录下,请选择对应的安装包进行安装,用不到的可忽略;
  4. 所有任务中应用命令必须采用绝对路径;
  5. 进入Master节点的方式为
  6. docker exec -it master /bin/bash
  7. 进入Slave1节点的方式为
  8. docker exec -it slave1 /bin/bash
  9. 进入Slave2节点的方式为
  10. docker exec -it slave2 /bin/bash
  11. 三个容器节点的root密码均为123456
复制代码
提前准备好apache-hive-3.1.2-bin.tar.gz、mysql-connector-java-5.1.37.jar放在宿主机的/opt/下(模仿的自己准备,比赛时会提供)
Hadoop 完全分布式安装设置

 环境搭建请看这篇文章大数据模块A环境搭建

条件条件已经在容器里搭建完hadoop了,没搭建的请看这篇Hadoop 完全分布式安装设置

Hive安装设置

本使命需要利用root用户完成相干设置,已安装Hadoop及需要设置前置环境,具体要求如下:
1、 从宿主机/opt目录下将文件apache-hive-3.1.2-bin.tar.gz、mysql-connector-java-5.1.37.jar复制到容器Master中的/opt/software路径中(若路径不存在,则需新建),将Master节点Hive安装包解压到/opt/module目录下,将命令复制并粘贴至客户端桌面【Release\使命A提交结果.docx】中对应的使命序号下;

第一步:从宿主机/opt目录下将文件apache-hive-3.1.2-bin.tar.gz、mysql-connector-java-5.1.37.jar复制到容器Master中的/opt/software路径中(若路径不存在,则需新建)

  1. [root@Bigdata ~]# docker cp /opt/apache-hive-3.1.2-bin.tar.gz master:/opt/software
  2. [root@Bigdata ~]# docker cp /opt/mysql-connector-java-5.1.37.jar master:/opt/software
复制代码
第二步:将Master节点Hive安装包解压到/opt/module目录下

  1. [root@master ~]# tar zxvf /opt/software/apache-hive-3.1.2-bin.tar.gz -C /opt/module/
复制代码
        重命名
  1. [root@master ~]# mv /opt/module/apache-hive-3.1.2-bin /opt/module/hive
复制代码
2、 设置Hive环境变量,并使环境变量生效,实行命令hive --version并将命令与结果截图容复制并粘贴至客户端桌面【Release\使命A提交结果.docx】中对应的使命序号下;

第一步:设置Hive环境变量/etc/profile

[root@master ~]# vi /etc/profile
在文件末行插入
  1. #HIVE_HOME
  2. export HIVE_HOME=/opt/module/hive
  3. export PATH=$PATH:$HIVE_HOME/bin
复制代码
第二步:使环境变量生效

  1. [root@master ~]# source /etc/profile
复制代码
第三步:实行命令hive --version

  1. [root@master ~]# hive --version
复制代码

        办理辩论题目

  1. [root@master ~]# rm -rf /opt/module/hive/lib/log4j-slf4j-impl-2.10.0.jar
复制代码
        再次运行hive --version
  1. [root@master ~]# hive --version
复制代码

3、 完成相干设置并添加所依赖包,将MySQL数据库作为Hive元数据库。初始化Hive元数据,并通过schematool相干命令实行初始化,将初始化结果截图(范围为命令实行竣事的末了10行)复制粘贴至客户端桌面【Release\使命A提交结果.docx】中对应的使命序号下。

第一步:完成相干设置并添加所依赖包,将MySQL数据库作为Hive元数据库

        将mysql-connector-java-5.1.37.jar放到hive的lib里

  1. [root@master ~]# cp /opt/software/mysql-connector-java-5.1.37.jar /opt/module/hive/lib/
复制代码
        hive的guava包与hadoop版本不同,将hadoop的guava包放到hive中

  1. cp /opt/module/hadoop/share/hadoop/common/lib/guava-27.0-jre-jar /opt/module/hive/lib
复制代码
        删除hive中较低版本的guava-19.0.jar

  1. [root@master ~]# rm -rf /opt/module/hive/lib/guava-19.0.jar
复制代码
        复制一份模板hive-env.sh   

  1. [root@master ~]# cp /opt/module/hive/conf/hive-env.sh.template /opt/module/hive/conf/hive-env.sh   
复制代码
        参加一下环境变量

  1. [root@master ~]# vi /opt/module/hive/conf/hive-env.sh
复制代码
                文件末了添加以下:
  1. export JAVA_HOME=/opt/module/java
  2. export HADOOP_HOME=/opt/module/hadoop
  3. export HIVE_CONF_DIR=/opt/module/hive/conf
  4. export HIVE_AUX_JARS_PATH=/opt/module/hive/lib
复制代码
第二步:设置hive-site.xml

  1. [root@master ~]# vi /opt/module/hive/conf/hive-site.xml
复制代码
  1. <?xml version="1.0"?>
  2. <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
  3. <configuration>
  4. <!--mysql的连接地址将下面的ip改成宿主机或mysql服务器的ip-->
  5.     <property>
  6.         <name>javax.jdo.option.ConnectionURL</name>
  7.         <value>jdbc:mysql://192.168.6.64:3306/hive?createDatabaseIfNotExist=true</value>
  8.     </property>
  9. <!--mysql用户名-->
  10.     <property>
  11.         <name>javax.jdo.option.ConnectionUserName</name>
  12.         <value>root</value>
  13.     </property>
  14. <!--mysql中hive用户密码-->
  15.     <property>
  16.         <name>javax.jdo.option.ConnectionPassword</name>
  17.         <value>123456</value>
  18.         </property>
  19. <!--mysql驱动-->
  20.         <property>
  21.                 <name>javax.jdo.option.ConnectionDriverName</name>
  22.                 <value>com.mysql.jdbc.Driver</value>
  23.         </property>
  24. </configuration>
复制代码
第三步:始化Hive元数据,并通过schematool相干命令实行初始化,将初始化结果截图(范围为命令实行竣事的末了10行)

        启动Hadoop集群(启动过了就不用启动了)

  1. start.all.sh
复制代码
        在hdfs上创建一个文件夹

  1. [root@master ~]# hdfs dfs -mkdir -p /user/hive/warehouse
复制代码
        开始初始化

  1. [root@master ~]# schematool -dbType mysql -initSchema --verbose
复制代码
  命令解释:
schematool:这是 Hive 自带的一个工具,用于管理和维护 Hive 元数据库(Metastore)的模式。通过它,你可以实行数据库模式的初始化、升级等利用。
-dbType mysql:指定你利用的数据库类型,这里是 mysql,意味着你将连接到 MySQL 数据库。假如你利用的是其他数据库(如 PostgreSQL、Oracle),可以将 mysql 更换为对应的数据库类型。
-initSchema:这个选项表现初始化 Hive 的数据库模式。实行此利用时,它会根据 Hive 的版本自动在 MySQL 数据库中创建表和须要的结构(例如表、索引等),以便 Hive 可以大概正常存储和查询元数据。
--verbose:该选项会在实行过程中提供具体的输出,帮助你查看实行的步骤和日志,便于排查题目。
  

上面的步骤已经完成使命了


下面是多余的利用
办理启动hive时有大量的日志题目

        办理前

把hive-log4j2.properties.template更换为log4j.properties
  1. [root@master ~]# mv /opt/module/hive/conf/hive-log4j2.properties.template /opt/module/hive/conf/log4j.properties
复制代码
办理后

实行下查看databases


END

一键三连是我写文章的动力!
声明:此文章为个人学习笔记,如文章有题目欢迎留言探究,也希望您的指正 !

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4