zookeeper數據恢復

剛剛在向hbase表寫數據時發現一個神奇的現象:判斷該表顯示不存在,建表時發現顯示 表已存在。

org.apache.hadoop.hbase.TableExistsException: cash_log:op_info

查看hdfs文件發現該表數據不存在。
查看 zk顯示該表 meta信息存在。
這裏寫圖片描述
要做的 就是在zk上使用rmr /hbase1/table/cash_log:op_info刪除該表即可。

可是我寫成了rmr /hbase1/table 導致所有meta表刪除

記得以前好像聽過使用hbck可以恢復,使用之後 沒用。

由於zk的信息都是放在內存的,啓動的以後會讀取備份信息。那麼我們只要保留最新的zk備份版本即可。
zk的備份 文件在zoo.cfg文件中
這裏寫圖片描述

進入該目錄下的version-2目錄,把文件名大於你需要恢復的文件刪除(如果是集羣,每臺機器都要刪除)重新啓動zk集羣 (集羣每一個) 即可解決 。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章