Hbase使用shell命令出现报错:PleaseHoldException: Master is initializing 解决办法
Posted Z.Q.Feng
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Hbase使用shell命令出现报错:PleaseHoldException: Master is initializing 解决办法相关的知识,希望对你有一定的参考价值。
项目场景:
- Ubuntu20.04
- Hadoop3.2.2
- Hbase2.2.2
问题描述:
主要错误如下:ERROR: org.apache.hadoop.hbase.PleaseHoldException: Master is initializing
在启动 Hbase shell 后,使用 create, list
等命令时,出现如下报错:
hbase(main):001:0> list
TABLE
ERROR: org.apache.hadoop.hbase.PleaseHoldException: Master is initializing
at org.apache.hadoop.hbase.master.HMaster.checkInitialized(HMaster.java:2452)
at org.apache.hadoop.hbase.master.MasterRpcServices.getTableNames(MasterRpcServices.java:915)
at org.apache.hadoop.hbase.protobuf.generated.MasterProtos$MasterService$2.callBlockingMethod(MasterProtos.java:58517)
at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2339)
at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:123)
at org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:188)
at org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:168)
For usage try 'help "list"'
Took 10.297 seconds
原因分析:
这里我的电脑上只是单纯为 Hadoop 伪分布式集群配置了 Hbase 应用,所以像网上其他说的 Hbase 和 Zookeeper 服务器时间不一致问题我觉的是不大可能的, 主要原因应该是:Hadoop 和 Hbase 的进程不一致,导致 Master 结点一直在初始化。
解决方案:
格式化 Hadoop 中的 Hbase 文件系统,重新启动 Hbase,让两者重新同步:
先关闭所有 Hbase 服务:
cd /usr/local/hbase
bin/stop-hbase.sh
接着关闭所有 Hadoop 服务:
cd /usr/local/hadoop
sbin/stop-all.sh
输入 jps
,确保所有 Hadoop 和 Hbase 进程均已关闭:
zq@fzqs-Laptop:~$ jps
4673 Jps
接着启动 Hadoop 服务:
cd /usr/local/hadoop
sbin/start-all.sh
查看 HDFS 中的文件:
bin/hdfs dfs -ls /
输出应如下(含 /hbase):
zq@fzqs-Laptop:/usr/local/hadoop$ bin/hdfs dfs -ls /
Found 1 items
drwxr-xr-x - root supergroup 0 2021-10-28 21:49 /hbase
删除 /hbase 目录:
bin/hdfs dfs -rm -r /hbase
启动 Hbase 服务:
cd /usr/local/hbase
bin/start-hbase.sh
接着再启动 shell,应该就能用了:
bin/hbase shell
以上是关于Hbase使用shell命令出现报错:PleaseHoldException: Master is initializing 解决办法的主要内容,如果未能解决你的问题,请参考以下文章
使用java命令出现Error: A JNI error has occurred, please check your installation and try again的错误
npm i命令报错“Please try running this command again as root/Administrator”
安装hbase分布式集群出现的报错- ERROR:org.apache.hadoop.hbase.PleaseHoldException: Master is initializing
HBase 报错 ERROR: org.apache.hadoop.hbase.PleaseHoldException: Master is initializing