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