Восстановление архива MongoDB из Atlas с помощью mongorestore

#mongodb #restore #mongorestore

#mongodb #восстановить #mongorestore

Вопрос:

Я загрузил резервную копию restore-xxx.tar.gz из моего атласа mongodb (ссылка для скачивания онлайн)

Я хочу восстановить его на другом сервере с помощью этой команды

 .mongorestore.exe -uri mongodb srv://xxx-xxx.mongodb.net --username xxxx --password 'xxxx' --nsFrom='xxxxx.*' --nsTo='restoreDbTest.*' --gzip --archive='D:MongoExportDatarestore-xxx.tar.gz'
  

Я попытался разархивировать tar, чтобы получить тот же результат :

 .mongorestore.exe -uri mongodb srv://xxx-xxx.mongodb.net --username xxxx --password 'xxxx' --nsFrom='xxxxx.*' --nsTo='restoreDbTest.*' --gzip --archive='D:MongoExportDataunzip-***.gz'
  

Я получил эту ошибку :

 2020-10-30T11:41:24.494 0100    Failed: stream or file does not appear to be a mongodump archive
2020-10-30T11:41:24.495 0100    0 document(s) restored successfully. 0 document(s) failed to restore.
  

Можете ли вы объяснить, почему я не могу восстановить резервную копию atlas с помощью mongorestore?

Ответ №1:

Я нашел решение

Как экспортировать и восстановить MongoDB между двумя учетными записями mongo Atlas:

  1. Загрузите архив из mongo Atlas
  2. Извлеките tar
  3. Запустите doemons (убедитесь, что служба не запущена в Windows) => 'C:Program FilesMongoDBServer4.4binmongod.exe' --dbpath D:MongoExportArchiverestore-5f7431d95f8089221b1e16dd
  4. Создать дамп и сохранить в D:/data ==> 'D:MongoToolsbinmongodump.exe' -d myDataBase -o D:Data
  5. Импортировать дамп с помощью mongorestore ==> 'D:MongoToolsbinmongorestore.exe' -uri mongodb srv://xxxxxxxxx.mongodb.net -d dbRestoreProd --username myUser --password 'myP4ss0rd' D:DatamyDataBase