Ошибка восстановления MongoDB

Я пытаюсь восстановить базу данных mongodb из дампа в Ubuntu 14.04.2, дамп был создан на версии оболочки MongoDB: 2.4.13, и я восстанавливаю на версии оболочки MongoDB: 3.0.1.

Это команда, которую я запускаю, и ошибка, которую я получаю.

Mongorestore / для дома / на другое / резервные копии / постановка / mongo

2015-04-01T12: 12: 32.886 + 0200 создание списка БД и коллекций для восстановления из / home / somename / backups / staging / mongo dir

2015-04-01T12: 12: 32.896 + 0200 при условии, что пользователи в каталоге дампа имеют версию <= 2.4 (версия для аутентификации 1)

2015-04-01T12: 12: 32.896 + 0200 Ошибка: коллекции пользователей и ролей в дампе имеют несовместимую версию проверки подлинности с целевым сервером: невозможно восстановить пользователей версии 1 проверки подлинности на сервер версии 5 проверки подлинности

Есть ли способ обойти это или исправить?

Любая помощь будет высоко ценится

3 ответа

Вы можете обойти эту проблему, перемещая admin каталога из папки дампа, затем повторно запустите команду mongorestore.

Например, если вы бежали

mongorestore --dir ~/path/to/mongodumpdir

и это не удалось, то, скорее всего, у вас есть admin папка там. Вы можете переместить его и запустить команду выше.

Я считаю, что особенно это system.users.bson это вызывает проблему. С Монго 2.x.x а также 3.x.x добавлять и хранить пользователей по-разному.

Конечно, пользователи вашего старого mongodb не будут доступны в вашем новом БД, но вы всегда можете вручную добавить их обратно.

Попробуйте добавить базу данных аутентификации в команду CLI как: --authenticationDatabase admin

Попробуйте добавить --authenticationMechanism SCRAM-SHA-1

см. документы: https://docs.mongodb.com/manual/reference/program/mongorestore/.

Другие вопросы по тегам