我使用cbbackup
來備份couchbase
。然後對數據庫執行一些操作,例如添加和刪除文檔。操作完成後,我想放棄所有操作並將db恢復到備份狀態。如何將couchbase恢復到備份狀態?
我做了以下測試。 cbbackup和cbrestore在我的測試中沒有幫助。如何實現我的目標?
備份數據庫
$ rm -rf /tmp/cbbackup $ /opt/couchbase/bin/cbbackup http://cb_ip:8091 /tmp/cbbackup -u 'xxx' -p '***' -v
記住社會桶的項目數。
- 數:33
- 從社會桶
- 刪除ID刪除一個文件:現有項目-110
- 添加了兩個新的文件,以社會桶
- 標識:新項目1,新項目2
- 請記住社交存儲分區的項目數量。
- 數:34
恢復社會桶
$ /opt/couchbase/bin/cbrestore /tmp/cbbackup http://cb_ip:8091 -u 'xxx' -p '***' -b mybucket -v
驗證是否刪除的文檔又回來了,如果添加的文件將被刪除。
- 結果:字數統計:34,沒有變化
- 刪除的項目不回來了。
- 添加的項目不會被刪除。
結論:cbrestore無法將db恢復到備份時間點。備份時間點後的更改不會被刪除。
使用cbtransfer恢復數據。結果和結論與cbrestore相同。
$ /opt/couchbase/bin/cbtransfer /tmp/cbbackup http://cb_ip:8091 -u 'xxx' -p '***' -b mybucket -v