当前位置:   article > 正文

apache-hive-3.1.2-bin 安装_apache-hive-3.1.2-bin.tar.gz

apache-hive-3.1.2-bin.tar.gz

在安装前说明

1. hadoop、hive、flink等目前版本基本依赖于jdk1.8, 所以需要专门的JDK环境,毕竟现在大多开发者都是使用>=11版本了。

2. windows 系统建议使用VMware通过新建虚拟机安装,适用windows的版本在安装中配置、安装后使用都会挺麻烦(权限、cmd启动脚本、切换开发使用的jdk版本等),也会比较卡,毕竟Contos7系统目前是最贴近服务器环境的。

3.apache-hive 依赖一种DB结合使用,这里以已经装好的MySql为例。

下面,直接进入正题!

第一步: 下载

https://archive.apache.org/dist/hive/hive-3.1.2/apache-hive-3.1.2-src.tar.gz  可使用迅雷下载

第二步: 安装

1. gz文件解压到指定目录

tar zxvf apache-hive-3.1.2-bin.tar.gz /app/hive

2.安装前的一些准备

2.1  首先需要JDK1.8的环境 (搭建参考地址)

2.2  xml 配置文件的修改

/app/hive/apache-hive-3.1.2-bin/conf

mysql的相关配置需要改成自己环境的配置, 在mysql新建一个hive数据库;

其他ip需要设置成自己本机的ip地址,后面启动会用上

  1. <configuration>
  2. <!-- 数据库连接地址配置 -->
  3. <property>
  4. <name>javax.jdo.option.ConnectionURL</name>
  5. <value>jdbc:mysql://xx.xx.xxx.xxx:3306/hive?serverTimezone=UTC&amp;useSSL=false&amp;allowPublicKeyRetrieval=true</value>
  6. <description>
  7. JDBC connect string for a JDBC metastore.
  8. </description>
  9. </property>
  10. <!-- 数据库驱动配置 -->
  11. <property>
  12. <name>javax.jdo.option.ConnectionDriverName</name>
  13. <value>com.mysql.cj.jdbc.Driver</value>
  14. <description>Driver class name for a JDBC metastore</description>
  15. </property>
  16. <!-- 数据库用户名 -->
  17. <property>
  18. <name>javax.jdo.option.ConnectionUserName</name>
  19. <value>xxx</value>
  20. <description>Username to use against metastore database</description>
  21. </property>
  22. <!-- 数据库访问密码 -->
  23. <property>
  24. <name>javax.jdo.option.ConnectionPassword</name>
  25. <value>xxxxxxxxx</value>
  26. <description>password to use against metastore database</description>
  27. </property>
  28. <!-- 指定存储元数据要连接的地址 -->
  29. <property>
  30. <name>hive.metastore.uris</name>
  31. <value>thrift://192.168.254.130:9083</value>
  32. </property>
  33. <!-- 指定 hiveserver2 连接的 host -->
  34. <property>
  35. <name>hive.server2.thrift.bind.host</name>
  36. <value>192.168.254.130</value>
  37. </property>
  38. <!-- 指定 hiveserver2 连接的端口号 -->
  39. <property>
  40. <name>hive.server2.thrift.port</name>
  41. <value>10000</value>
  42. </property>
  43. </configuration>

2.2.1  mysql 驱动包

如果mysql安装的是8.0版本以上,需要把 mysql-connector-java-8.0.22.jar 上传至 /app/hive/apache-hive-3.1.2-bin/lib 目录下。

2.3  sh 配置文件的修改

/app/hive/apache-hive-3.1.2-bin/conf 目录下的 hive-env.sh 文件

HADOOP_HOME:hadoop的安装目录

HIVE_CONF_DIR: hive 解压后的conf 根目录

HIVE_CONF_DIR: hive 解压后的lib 根目录

  1. # Set HADOOP_HOME to point to a specific hadoop install directory
  2. export HADOOP_HOME=/app/hadoop/hadoop-3.1.3
  3. # Hive Configuration Directory can be controlled by:
  4. export HIVE_CONF_DIR=/app/hive/apache-hive-3.1.2-bin/conf
  5. # Folder containing extra libraries required for hive compilation/execution can be controlled by:
  6. export HIVE_AUX_JARS_PATH=/app/hive/apache-hive-3.1.2-bin/lib
2.4  ContOS7 系统 hive 环境变量 HIVE_HOME 配置
vi /etc/profile
  1. #JAVA_HOME
  2. export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.402.b06-1.el7_9.x86_64
  3. export PATH=$PATH:$JAVA_HOME/bin
  4. #:HADOOP_HOME
  5. export HADOOP_HOME=/app/hadoop/hadoop-3.1.0
  6. export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin
  7. #HIVE_HOME
  8. export HIVE_HOME=/app/hive/apache-hive-3.1.2-bin
  9. export PATH=$PATH:${HIVE_HOME}/bin
  10. #flink
  11. export FLINK_HOME=/app/flink/flink-1.17.2
  12. export PATH=$PATH:$FLINK_HOME/bin

刷新配置

source /etc/profile

3.启动

通过 myhive.sh 脚本启动

myhive.sh start  启动

myhive.sh stop  停止

  1. VE_LOG_DIR=$HIVE_HOME/logs
  2. mkdir -p $HIVE_LOG_DIR
  3. #检查进程是否运行正常,参数1为进程名,参数2为进程端口
  4. function check_process()
  5. {
  6. pid=$(ps -ef 2>/dev/null | grep -v grep | grep -i $1 | awk '{print $2}')
  7. ppid=$(netstat -nltp 2>/dev/null | grep $2 | awk '{print $7}' | cut -d '/' -f 1)
  8. echo $pid
  9. [[ "$pid" =~ "$ppid" ]] && [ "$ppid" ] && return 0 || return 1
  10. }
  11. function hive_start()
  12. {
  13. metapid=$(check_process HiveMetastore 9083)
  14. cmd="nohup hive --service metastore >$HIVE_LOG_DIR/metastore.log 2>&1 &"
  15. cmd=$cmd" sleep 4; hdfs dfsadmin -safemode wait >/dev/null 2>&1"
  16. [ -z "$metapid" ] && eval $cmd || echo "Metastroe服务已启动"
  17. server2pid=$(check_process HiveServer2 10000)
  18. cmd="nohup hive --service hiveserver2 >$HIVE_LOG_DIR/hiveServer2.log 2>&1 &"
  19. [ -z "$server2pid" ] && eval $cmd || echo "HiveServer2服务已启动"
  20. }
  21. function hive_stop()
  22. {
  23. metapid=$(check_process HiveMetastore 9083)
  24. [ "$metapid" ] && kill $metapid || echo "Metastore服务未启动"
  25. server2pid=$(check_process HiveServer2 10000)
  26. [ "$server2pid" ] && kill $server2pid || echo "HiveServer2服务未启动"
  27. }
  28. case $1 in
  29. "start")
  30. hive_start
  31. ;;
  32. "stop")
  33. hive_stop
  34. ;;
  35. "restart")
  36. hive_stop
  37. sleep 2
  38. hive_start
  39. ;;
  40. "status")
  41. check_process HiveMetastore 9083 >/dev/null && echo "Metastore服务运行正常" || echo "Metastore服务运行异常"
  42. check_process HiveServer2 10000 >/dev/null && echo "HiveServer2服务运行正常" || echo "HiveServer2服务运行异常"
  43. ;;
  44. *)
  45. echo Invalid Args!
  46. echo 'Usage: '$(basename $0)' start|stop|restart|status'
  47. ;;
  48. esac

给脚本添加执行曲线

chmod +x myhive.sh

4.验证

3步骤脚本执行后,执行hive命令行,能进入hive则安装成功

# 查看占用的端口

 若启动失败也可用命令行查看配置文件的相关端口是否启用,具体原因具体排查

sudo netstat -ntlp  on the master

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

闽ICP备14008679号