由于hdfs的一些数据丢失,block块损坏,执行了hdfs fsck / -delete 来清除损坏块,之后重启HBase服务后发现启动异常,日志报错:
HBase file layout needs to be upgraded. You have version null and I want version 8. Consult http://hbase.apache.org/book.html for further information about upgrading HBase. Is your hbase.rootdir valid? If so, you may need to run 'hbase hbck -fixVersionFile'
出现该问题的原因是hdfs损坏的块包含hbase.version文件,导致清除的时候连同该文件也一同清除了,所以会报上述问题,如果不考虑数据丢失的情况,可以删除hadoop中的hbase文件夹重启hbase服务即可,删除hbase目录指令为:
hadoop fs -rm -r /hbase
本文详细解析了HBase服务启动异常的问题,特别是当hdfsfsck/-delete命令清除损坏块后,导致hbase.version文件丢失,进而引发HBasefilelayoutneedstobeupgraded错误。文章提供了具体的解决方案,包括如何安全地删除hadoop中的hbase文件夹,以及重启hbase服务的步骤。
526

被折叠的 条评论
为什么被折叠?



