Hive脚本化运行及健康检测

5 篇文章 0 订阅

之前一直想做一个Hive一键运行脚本
找了很久才找到这两篇博客博客

  • 首先一定要确认环境变量中添加了hive环境变量
    参考
    参考
vi /etc/profile
文件内添加:
export HIVE_HOME=/usr/local/hive(自己hive的安装目录)
export PATH=$PATH:$HIVE_HOME/bin

source /etc.profile

测试一下:

执行 hive --version
有hive的版本显现,配置成功!

  • 打开一个空的sh文件

vi hivedemo.sh

  • 添加:
#!/bin/bash
hive -e "select * from db_order.t_order"
hive -e "select * from default.t_user"
hql="create table  default.t_bash as select * from db_order.t_order"
hive -e "$hql"
  • 注意

hql如果太长,可以使用单独的文件,书写sql:如果要执行的hql语句特别复杂,那么,可以把hql语句写入一个文件:

vi demo.hql

select * from db_order.t_order;
select count(1) from db_order.t_user;

运行 hive -f /root/demo.hql 来执行

检测Hive健康状态

利用上面的办法进行Hive健康监测:

  • 1 查看hive相关进程

ps -ef | grep hive4203即hive运行的端口号
在这里插入图片描述
注意:
包含color= auto xxx 的进程 不需要看,不管是否安装hive,都会显示,所以不作为判断依据

![在这里插入图片描述](https://img-blog.csdnimg.cn/20191209091311793.png

  • 2 查看正在运行进程是否存在hive进程

jps

在这里插入图片描述
证明hive进程在运行

  • 利用脚本检测
    利用上面检测方式,只能证明进程存在,但是是否进程假死,是否可用,需要进一步进行检验。
    hive数据库内置名为default数据库,查看Hive是否运行,编写脚本
    注意:运行脚本的前提,hive被添加到环境变量中,添加方式看文章开始
#!/bin/bash
    hive_results=`hive -e "show databases"`
    echo "-----------------------------"
    result=$(echo $hive_results | grep "default")
    if [[ "$result" != "" ]]
    then
        echo Hive服务正常
    else 
        echo Hive状态异常
    fi

运行
结果: Hive服务正常

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在初始Hive Metastore之前,需要确保以下条件已满足: 1.已安装Hadoop和Hive。 2.已创建HDFS用户和组。 以下是初始Hive Metastore的步骤: 1.创建Hive Metastore数据库。可以使用MySQL或PostgreSQL作为Hive Metastore的数据库。使用以下命令创建MySQL数据库: ``` mysql -u root -p create database metastore; grant all privileges on metastore.* to 'hiveuser'@'localhost' identified by 'password'; flush privileges; exit; ``` 2.在Hive配置文件hive-site.xml中设置Hive Metastore的JDBC连接URL和数据库用户名和密码。 ``` <property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://localhost/metastore?createDatabaseIfNotExist=true</value> <description>JDBC connect string for a JDBC metastore</description> </property> <property> <name>javax.jdo.option.ConnectionDriverName</name> <value>com.mysql.jdbc.Driver</value> <description>Driver class name for a JDBC metastore</description> </property> <property> <name>javax.jdo.option.ConnectionUserName</name> <value>hiveuser</value> <description>username to use against metastore database</description> </property> <property> <name>javax.jdo.option.ConnectionPassword</name> <value>password</value> <description>password to use against metastore database</description> </property> ``` 3.运行Hive Metastore初始脚本。使用以下命令运行脚本: ``` schematool -dbType mysql -initSchema ``` 4.启动Hive服务,并测试Hive Metastore是否能正常工作。 ``` hive --service metastore & ``` 以上是初始Hive Metastore的基本步骤。可以根据实际情况进行调整。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值