hbase 快照和集群備份的NB方法

2021-06-28 11:57:12 字數 1419 閱讀 6771

hbase snapshots允許你對乙個表進行快照(即可用副本),它不會對region servers產生很大的影響,它進行複製和 恢復操作的時候不包括資料拷貝。匯出快照到另外的集群也不會對region servers產生影響。 下面告訴你如何使用snapshots功能

1.開啟快照支援功能,在0.95+之後的版本都是預設開啟的,在0.94.6+是預設關閉  

<

property

>

<

name

>hbase.snapshot.enabled

name

>

<

value

>true

value

>

property

>

2.給表建立快照,不管表是啟用或者禁用狀態,這個操作不會進行資料拷貝

$ ./bin/hbase shell 

hbase> snapshot '

mytable

', '

mytablesnapshot-122112

'

3.列出已經存在的快照

$ ./bin/hbase shell 

hbase> list_snapshots

4.刪除快照

$ ./bin/hbase shell 

hbase> delete_snapshot '

mytablesnapshot-122112

'

5.從快照複製生成乙個新錶

$ ./bin/hbase shell 

hbase> clone_snapshot '

mytablesnapshot-122112

', '

mynewtesttable

'

6.用快照恢復資料,它需要先禁用表,再進行恢復

$ ./bin/hbase shell

hbase> disable '

mytable

'hbase> restore_snapshot '

mytablesnapshot-122112

'

如果是因為不正確的客戶端行為導致資料丟失,全表恢復又需要表被禁用,可以採用快照生成乙個新錶,然後從新錶中把需要的資料用map-reduce拷貝到主表當中。

7.複製到別的集群當中

該操作要用hbase的賬戶執行,並且在hdfs當中要有hbase的賬戶建立的臨時目錄(hbase.tmp.dir引數控制)

$ bin/hbase class org.apache.hadoop.hbase.snapshot.exportsnapshot -snapshot mysnapshot -copy-to hdfs://

hbase 資料備份(快照)

snapshot 快照 開啟快照功能,在hbase site.xml檔案中新增如下配置項 hbase.snapshot.enabled true 在hbase shell中使用clone snapshot,delete snapshot,list snapshots,restore snapshot...

hbase基於快照的資料遷移

hbase基於快照的資料遷移 1.對於開啟安全認證 kerberos 的集群,首先需要關掉安全認證。2.在源集群所有節點 etc hosts檔案中配置目標集群所有節點的host。1.登入ambari檢查hbase site.xml 中的hbase.snapshot.enabled 是否設定為true...

hbase基於快照的資料遷移

hbase基於快照的資料遷移 前期準備 1.對於開啟安全認證 kerberos 的集群,首先需要關掉安全認證。2.在源集群所有節點 etc hosts檔案中配置目標集群所有節點的host。源集群操作 開啟hbase快照 1.登入ambari檢查hbase site.xml中的hbase.snapsh...