使用此脚本的注意事项:
- 已经配置好hive的环境变量,如果没有配置,执行此脚本必须添加绝对路径
- 脚本的存放的服务器必须是hive的metastore和hiveserver2服务的安装服务器
- 启动脚本
在hive的bin目录下执行vi hive-start.sh
命令或者通过touch hive-start.sh
创建一个文件都可以,在脚本内添加如下内容
#!/bin/bash
# 启动hive的metastore服务
hive --service metastore > /dev/null 2>&1 &
echo -n "Starting metastore servece,please wait"
mt=1
while [ $mt -ne 0 ]
do
sleep 0.5
echo -n "."
netstat -nltp | grep 9083 > /dev/null 2>&1 #端口号根据服务上hive的实际配置的端口号而定
mt=$?
done
echo ""
echo -e "\e[32mHiveMetastore service is running!\e[0m"
# 启hiveserver2服务
hiveserver2 > /dev/null 2>&1 &
echo -n "Starting hiveserver2 service,please wait"
hv2=1
while [ $hv2 -ne 0 ]
do
sleep 0.5
echo -n "."
netstat -nltp | grep 10000 > /dev/null 2>&1 #端口号根据服务上hive的实际配置的端口号而定
hv2=$?
done
echo ""
echo -e "\e[32mHiveServer2 service is running!\e[0m"
编写完脚本后执行chmod +x hive-start.sh
命令赋予脚本执行权
- 停止脚本
在hive的bin目录下执行vi hive-stop.sh
命令或者通过touch hive-stop.sh
创建一个文件都可以,在脚本内添加如下内容
#!/bin/bash
kill -9 $(netstat -nltp | grep 9083 | awk '{print $7}' | awk -F "/" '{print $1}')
kill -9 $(netstat -nltp | grep 10000 | awk '{print $7}' | awk -F "/" '{print $1}')
编写完脚本后执行chmod +x hive-stop.sh
命令赋予脚本执行权
这里的停止脚本写的比较简单,如果想做一些判断或者提示可根据启动脚本中的内容自行添加。