iT邦幫忙

2

求救,mongodb誤刪資料有辦法還原嗎(無備份)

  • 分享至 

  • xImage

小弟不才,今天本來要刪除本地端的mongodb資料,結果誤刪到公司客戶的資料..其中一個資料表的資料全部被砍掉,用的是remove指令,上網查詢後發現可以透過oplog這個文件來恢復數據,但嘗試很久都失敗,沒有辦法把oplog這個文件用mongodump出來,想請各位高手幫忙.....

看更多先前的討論...收起先前的討論...
player iT邦大師 1 級 ‧ 2022-11-29 17:55:09 檢舉
好可怕,你在爆料你公司的DB沒做定期備份?
db那台機器上有沒有快照之類的呢?
好可怕...該不會被求償導致公司倒閉吧...
看有沒有邏輯備份
或相關的操作log可進行還原
沒有就沒救了....
没有 除非开启了log日志
如果你的數據已經被誤刪,你可以尋求專業的技術支持,例如與MongoDB官方技術支持團隊聯繫。在這種情況下,建議您儘快聯繫技術支持團隊,以便最大限度地減少數據損失。

另外,為了避免這種情況再次發生,建議您在使用MongoDB時謹慎操作,並進行自動備份。這樣可以為您提供一個可靠的備份,在發生意外時可以快速恢復
感謝各位的意見,問題有順利解決了
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
3
zza6312
iT邦新手 2 級 ‧ 2022-11-30 13:32:36
最佳解答

如果是放 Storage裡,
可以看 Storage 有無快照,用照回復
或者你是作成 VM,有 VM 快照來救

6

oplog是有容量限制的。
基本是記錄基本的資料操作。

但是.........刪除整張表的。
我還真沒辦法確定會不會記錄下來。
因為一般並不會去做這件事。

如果真沒備份的話。嗯~~~好自為之吧。

1
norman_su
iT邦見習生 ‧ 2022-11-30 16:06:31

collection 在本地是用檔案存在的,
找看看 linux 的 file system 有沒有開 journal ,
從 journal 把檔案找回來即可,
這樣救回的資料可能會有資料落差,
就要看運氣好不好,
oplog 裡面能不能找回來落差的部份

1
vsyour
iT邦新手 5 級 ‧ 2022-12-28 10:18:49

我知道的较为安全的恢复资料的方法是备份。如果您在删除数据之前有备份,则可以将备份数据还原回数据库。

如果您没有备份,则可以尝试使用第三方工具来尝试恢复数据。例如,MongoDB Data Recovery 是一款用于恢复 MongoDB 数据的工具。

然而,我不能保证这种方法的安全性和有效性。因此,我强烈建议您尽早建立备份计划,以便在出现类似问题时能够更安全地恢复数据。

我要發表回答

立即登入回答