HBase新增表显示已存在,shell里list不存在

HBase新增表显示已存在,shell里list不存在,第1张

HBase新增表显示已存在,shell里list不存在

Hbase异常断电恢复后,某个表暴力删除后,新增该表显示已存在

暴力删除步骤

60010端口页面显示,该表处于RIT状态

这个时候drop会卡住。
1.删除HDFS上的数据

hadoop fs -mv /hbase/default/[table_name] /tmp

2.使用hbck进行修复

hbase hbck -fixmeta -fixAssignment

3.重启Hbase

修复步骤

暴力删除后,新建该表,表名未变,显示该表已存在,shell里!list列表没有,zookooper里也找不到该文件。
百度到的均为:
进入zookeeper的服务,然后把表删掉再重启hbase

zkCli.sh
ls /hbase/table
rmr /hbase/table/[table_name]
ls /hbase/table-lock
rmr /hbase/table-lock/[table_name]

我在进入zookeeper的服务后,根本没有找到该表
这时,查看Hbase的源数据

scan 'hbase:meta' , {LIMIT=>10,FILTER=>"PrefixFilter('[table_name]')"}

能看到有记录,
验证一下:

get 'hbase:meta' , '[table_name]'

对该记录进行删除 *** 作(由于之前暴力删除是直接删除了/hbase/default/[table_name]文件),但是源数据表里还存在,所以对该行数据进行删除

deleteall 'hbase:meta' , '[table_name]'

之后新建成功。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5700959.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存