hive连不上,报错9000拒绝连接

参考:豆包、百度

一、排查错误

客户端(你执行 hdfs dfsadmin -safemode ...)去连接 NameNode 的 9000 端口,但连接被拒绝。

这说明 NameNode 根本没在监听 9000 端口(或者进程没启动,或者启动失败)。

jps查看进程,发现没有namenode

查看日志:

复制代码
tail -n 100 hadoop-$(whoami)-namenode-$(hostname).log

发现

复制代码
Storage directory /tmp/hadoop-root/dfs/name does not exist
...
InconsistentFSStateException: Directory /tmp/hadoop-root/dfs/name is in an inconsistent state

这说明 NameNode 的元数据目录不存在,所以 NameNode 启动失败,也就导致 9000 端口没有监听,出现 "拒绝连接" 错误。

二、解决方法

修改配置,将数据目录放到非 /tmp 位置(推荐)

复制代码
mkdir -p /hadoop_data/hadoop/data/namenode
mkdir -p /hadoop_data/hadoop/data/datanode
chown -R hadoop:hadoop /hadoop_data/hadoop

编辑 $HADOOP_HOME/etc/hadoop/hdfs-site.xml

复制代码
<property>
  <name>dfs.namenode.name.dir</name>
  <value>/hadoop_data/hadoop/data/namenode</value>
</property>
<property>
  <name>dfs.datanode.data.dir</name>
  <value>/hadoop_data/hadoop/data/datanode</value>
</property>

格式化并启动

复制代码
stop-all.sh
hdfs namenode -format
start-all.sh
jps

这样即使重启机器,数据也不会丢失。

9000 端口也有数据了。

复制代码
[root@localhost ~]# jps
1107 Elasticsearch
28483 NameNode
29236 NodeManager
29111 ResourceManager
28618 DataNode
30108 RunJar
31468 Jps
28830 SecondaryNameNode
29950 RunJar

[root@localhost ~]# netstat -nlpt|grep 9000
tcp        0      0 127.0.0.1:9000          0.0.0.0:*               LISTEN      28483/java  

三、HiveServer2/Beeline方式连接hive(推荐)

启动HiveServer2服务 在服务器上运行以下命令:

复制代码
nohup hiveserver2 > /dev/null 2>&1 &

使用Beeline客户端连接 在客户端运行以下命令:

复制代码
beeline -u jdbc:hive2://<hostname>:10000 -n <username>

成功连接后,可以执行Hive查询操作,例如:

复制代码
show databases;
相关推荐
Leo.yuan5 小时前
ETL是什么?一文讲清ETL和ELT的区别
数据仓库·etl
迈巴赫车主9 小时前
大数据:Hadoop(HDFS)
大数据·hadoop·hdfs
zhojiew1 天前
[INFRA] EMR集群中Hive和Spark集成Glue Data Catalog过程的深入分析
hive·hadoop·spark·aws·bigdata
bukeyiwanshui1 天前
Hive的使用
数据仓库·hive·hadoop
SelectDB技术团队1 天前
从两套系统到一条 SQL:SelectDB search() 搞定日志的搜索与分析
数据库·数据仓库·sql·开源
添柴少年yyds2 天前
hive锁机制
数据仓库·hive·hadoop
蓝眸少年CY2 天前
Hive - 安装与使用
数据仓库·hive·hadoop
旺仔小拳头..3 天前
Servlet概念与创建
数据仓库·hive·hadoop
旺仔小拳头..3 天前
Filter 过滤器 与Listener 监听器
数据仓库·hive·hadoop
Leo.yuan3 天前
实时ETL怎么做?有哪些好用的ETL工具?
数据仓库·etl