#此文仅作为本人问题解决过程存档
环境:VM、CentOS、Xshell
问题:输入hive后无法正常启动hive,并有如下提示
错误原因:hdfs 和yarn没有完全启动(主要是namenode无法正常启动)
解决方法:
1.jps 查看当前进行进程
2.hadoop namenode -format 格式化hdfs系统(参考链接:(27条消息) hadoop启动后jps查看总是不显示namenode进程,然后重新格式化hdfs_laneypeng的博客-CSDN博客_jps namenode出不来https://blog.csdn.net/u010995503/article/details/47166309)
3.hadoop-daemon.sh start namenode 启动NameNode
4.hadoop-daemon.sh start datanode 启动DataNode
5.start-yarn.sh 启动yarn
6.jps 查看是否启动成功
7.hive 启动hive
显示为这样,就可以成功启动hive了
#其他bb:
(1).一般来讲start-dfs.sh就可以同时启动NameNode、SecondaryNameNode和DataNode
(2).如果出现占号(即该号有其他进程进行中),则结束进程:
stop-all.sh 结束所有进程
stop-dfs.sh 结束NameNode、DataNode、SecondaryNameNode
hadoop-daemons.sh stop namenode 单独NameNode
hadoop-daemons.sh stop datanode 单独结束DataNode
hadoop-daemons.sh stop secondarynamenode 单独结束SecondaryNameNode
其余删除与开启,参考链接:
hadoop启动和关闭命令 - 简书 (jianshu.com)https://www.jianshu.com/p/c03d7f0ec360
(4).输入hive进入hive内,如要退出即在hive内输入:quit;(不要忘记";")
其他的退出方式,参考链接:(27条消息) 启动和退出hive_木凡空的博客-CSDN博客_退出hivehttps://blog.csdn.net/zengxingyuluo/article/details/103447688(5).有时候hive没有办法启动是因为8080端口被占(比如之前开启的Tomcat之类),解决方式参考:(27条消息) 杀掉8080端口进程_封闭火车的博客-CSDN博客_杀死8080https://blog.csdn.net/growing1224/article/details/82384939
(6).最后记得同步时间:ntpdate time.nist.gov
如果同步失败,显示没有相关文件,可以选择重下。参考链接:
在虚拟机中同步网络时间 - 简书 (jianshu.com)https://www.jianshu.com/p/f2bf6a81feb3
(7).如果是jps后没有DataNode,参考:
(8).如果之前开启过hive,结果导致进不去了,那么有可能是因为有个runjar了
kill -9 6976 6976为jps后runjar显示编号