问题描述

        相信很多人和我一样在启动完集群之后,通过“lsof -i:10000”检测是否启动成功时会遇到如下图这种情况:

等待许久依旧无法启动成功,从而DataGrip无法连接数据库。

        经过回头检验发现在启动metastore后,hive检验时报错如下图:

很容易我们可以关注到:

Logging initialized using configuration in jar:file:/export/server/hive/lib/hive-common-3.1.2.jar!/hive-log4j2.properties Async: true
Exception in thread "main" java.lang.RuntimeException: org.apache.hadoop.hdfs.server.namenode.SafeModeException: Cannot create directory /tmp/hive. Name node is in safe mode.
 

这是因为我们在某次关闭虚拟机时,hadoop没正常关闭,系统自动启动了保护模式!

解决办法

1.首先我们要检测我们的安全模式是否是开启状态:

 hadoop dfsadmin -safemode get

很显然,安全模式为ON开启状态,此时matestore服务是不能启动的。

2.关闭安全模式:hadoop dfsadmin -safemode forceExit

当最后一行显示OFF时,代表我们关闭成功,然后我们重新启动matestore服务。

解决后结果

启动之后,输入hive进行运行结果检测:

问题解决:

启动hiveserver2服务:(此过程可能耗时几分钟,根据自己电脑配置情况会有所不同)

检测状态:

大功告成!

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐