MongoDB mongorestore и существующая коллекция с записями


82

Мне нужно импортировать (восстановить) коллекцию, созданную с помощью, mongodumpв существующую базу данных, и я бы хотел, чтобы записи были объединены в существующую коллекцию.

mongorestoreОбъединяет ли записи в одной коллекции или удалит существующую коллекцию перед восстановлением записей?

Ответы:


134

mongorestoreудалит существующую коллекцию, только если вы используете --dropаргумент.

Если вы не используете --drop, все документы будут вставлены в существующую коллекцию, если такой документ _idуже не существует. Документы с одинаковыми параметрами _idбудут пропущены, они не объединяются. Поэтому mongorestoreпо умолчанию никогда не удалит или не изменит какие-либо существующие данные.


действительно ли mongodb удаляется с использованием опции --drop? В моем случае при восстановлении я могу видеть предыдущие записи, которые были добавлены после снятия дампа.
Можете

2
Ссылка Mongorestore на ответ выше: docs.mongodb.org/manual/reference/program/mongorestore/…
Томас Ромеро

5
@codeofnode из документации: --drop does not drop collections that are not in the backup.. Вы должны убедиться, что коллекция, которую вы ожидаете отбросить, действительно присутствует в резервной копии.
csvan
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.