Как восстановить удаленную базу данных MongoDB? - PullRequest
3 голосов
/ 08 июля 2011

Если кто-то случайно удалил базу данных MongoDB, но выполнил db.dropDatabase (), как он может восстановить базу данных?

Удалить базу данных в MongoDB просто, а команда db.dropDatabase () не будетсотрите все данные на нем, но пометите его как подлежащий удалению, чтобы размер базы данных не изменился после использования команды удаления, что, как мне кажется, должно быть каким-то образом для удаления маркера, подлежащего удалению.Кто-нибудь может указать мне, как?

Ответы [ 2 ]

6 голосов
/ 06 апреля 2012

Я пытался воспроизвести то, что вы сделали.Я убил базу данных с помощью db.dropDatabase () после того, как сделал ее резервную копию :-) Имя базы данных было «gacheater».Перед сбросом папка mongodb содержала 3 файла (база данных не пустая):

  • gacheater.ns
  • gacheater.1
  • gacheater.2

после сброса эти файлы исчезли.Поэтому я думаю, что mongodb действительно удаляет ваши данные .

Поэтому единственный выбор, который у вас есть, - попытаться восстановить файлы из файловой системы

PS: MacOS 10.5, MongoDB 1.8.2

4 голосов
/ 05 октября 2015

AFAIK большинство систем просто помечают файл как удаленный с помощью флага, а не перезаписывают его. Возможно восстановить файлы стандартными инструментами ...

http://www.cyberciti.biz/tips/linuxunix-recover-deleted-files.html

С ними проще работать

http://extundelete.sourceforge.net/

Как указано, ничто не заменит резервных копий.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...