我已经在 hadoop 2.6.0 之上安装了 hive 0.14。

设置主要涉及提取 tar.bin 文件。

我按照本指南进行设置。

http://www.ishaanguliani.com/content/hive-0140-setup-ubuntu

我用命令行启动 hiveserver2:

( $HIVE_HOME/bin/hiveserver2 &> hiveserver.log & )

现在,我想知道停止 hiveserver2 的正确方法是什么。我可以杀死它,但我怀疑这是否提供了一个优雅的退出。

最佳答案

编写一个小的 shell 脚本来查找 hiveserver2 进程并停止它。我使用下面的 shell 脚本来停止 hiveserver2 和 hive Metastore 进程。希望这可以帮助。

hive2_pid=`pgrep -f org.apache.hive.service.server.HiveServer2`

    if [[ -n "$hive2_pid" ]]
    then
        echo "Found hivesevrer2 PID-- "$hive2_pid
        kill $hive2_pid
        # if process is still around, use kill -9
        if ps -p $hive2_pid > /dev/null ; then
            echo "Initial kill failed, killing with -9 "
            kill -9 $hive2_pid
        fi
    echo "Hive server2 stopped successfully"
    else
        echo "Hiveserver2 process not found , HIveserver2 is not running !!!"
    fi

    meta_pid=`pgrep -f org.apache.hadoop.hive.metastore.HiveMetaStore`

    if [[ -n "$meta_pid" ]]
    then
        echo "Found hivesevrer2 PID-- "$meta_pid
        kill $meta_pid
        # if process is still around, use kill -9
        if ps -p $meta_pid > /dev/null ; then
            echo "Initial kill failed, killing with -9 "
            kill -9 $meta_pid
        fi
    echo "Hive metastore stopped successfully"
    else
        echo "Hive metastore process not found , Hive metastore is not running !!!"
    fi

关于java - 停止 hiveserver2 的正确方法是什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35445516/

10-11 07:50