错误提示信息如下
ERROR: org.apache.hadoop.hbase.PleaseHoldException: Master is initializing
错误背景
错误原因:按照林子雨的大数据教程搭建好Hbase环境后,我使用创建表和添加一些属性的命令,一开始非常正常,但是当我输入一个中文的时候,通过get命令显示的时候出现的十六进制编码,本质上是对的,但是我更加希望能得到语义信息更加明显的中文。于是我在网络上面搜到了转换为中文的命令,但是我输入命令的时候不小心少点了一个右括号,导致hbase卡死,我只能终止虚拟机程序,当我第二次进入的时候,测试describe命令失效,创建新表仍然报错。我意识到是整个hbase环境出现了问题。
解决方法
包括CSDN,网络上很多人给出了不同的解决办法,但是对我来说都无用。通过分析,我最终通过更改hbase数据存储文件解决了这个问题。我的理解是:强制退出导致hbase存储文件中出现了意外的错误标注,导致hbase无法写入这个文件,也无法读取这个文件,因为根据hbase设计原理,一个主机上的文件出现问题那么以后都不能使用这个主机的东西,如果需要使用,则需要较为复杂的配置。我使用的是单机模式,因此hbase无法更改执行路径,导致hbase无法正确执行。
无论如何,我的解决方法是:修改hbase数据保存文件夹。
操作如下:
打开并配置/usr/local/hbase/conf/hbase-site.xml 文件
vim /usr/local/hbase/conf/hbase-site.xml
在启动 HBase 前需要设置属性 hbase.rootdir,用于指定 HBase 数据的存储位置。此处设置为 HBase 安装目录下的 hbase-tmp 文件夹即(/usr/local/hbase/hbase-tmp),配置如下:文章来源:https://www.toymoban.com/news/detail-713316.html
<configuration>
<property>
<name>hbase.rootdir</name>
<value>file:///usr/local/hbase/hbase-tmp</value>
</property>
</configuration>
修改为:文章来源地址https://www.toymoban.com/news/detail-713316.html
<configuration>
<property>
<name>hbase.rootdir</name>
<value>file:///usr/local/hbase/hbase-tmp1</value>
</property>
</configuration>
到了这里,关于【ERROR: org.apache.hadoop.hbase.PleaseHoldException: Master is initializi】HBase单机模式意外退出导致后续创建崩溃的解决方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!