помилка mongorestore: не знаю, що робити з дамп-файлом [закрито]


121

У мене встановлено DB DB в наступному шляху c:\mongodb\bin. Я налаштував мінливу змінну середовища PATH у розширених налаштуваннях. У мене також працює mongod. Коли я запускаю дану команду mongorestore дамп із наступного шляху c:\hw1-1\dump(містить файли BSON), я отримую цю помилку:

Не знаєте, що робити з дамп-файлом

Я посилався на цю тему, щоб перевірити свій шлях.


Усі відповіді різні, оскільки ця помилка насправді означає, що деякі ваші прапори неправильні. Які прапорці невірні, залежатиме від того, що ви відновите та де його відновите. Використовуйте mongodump --helpдля отримання списку поточних прапорів у вашому екземплярі для налагодження цієї проблеми.
Ліам

Відповіді:


279

в mongodb 3.0 або вище, ми повинні вказати ім'я бази даних для відновлення

mongorestore -d [your_db_name] [your_dump_dir]

Я використовую Windows версії 3.0.3 і вказуючи ім'я бази даних зробив це для мене! Дякую @clevertension.
Sotiris Zegiannis

Працював як шарм і на 3.0.6.
шармаап

Це питання виникло після оновлення mongodb-tools, дякую!
emyller

2
Це працювало для мене, використовуючи автентифікацію так:mongorestore -u k00k -p 1337p455w0rd -d mydb ./dump/mydb
k00k

Це стара відповідь. У нових версіях ви не можете вказати параметр --db( -d) у багатьох випадках. Ось як я зараз його відновлюю. mongorestore --nsFrom=fromdbname.* --nsTo=todbname.* yourdumpfolder/Далі, коли ви використовували gzip, вам потрібно вказати --gzipпараметр, і якщо ви хочете змінити вміст, ви можете додати --dropпараметр.
Джос

36

Напевно, ви бачили цю помилку:

ПОМИЛКА: не знаю, що робити з файлом [dump]

Що означає в цьому випадку, що dumpу вашому поточному робочому каталозі немає файлу чи каталогу. Отже, спробуйте це спочатку cd c:/hw1-1/(або будь-який правильний синтаксис є у Windows, я не можу його перевірити.) Або ви можете вказати повний шлях до dumpкаталогу:

mongorestore c:/hw1-1/dump

дякую c: / hw1-1 mongorestore deump працює чудово ..
Prasanna Aarthi

9

Якщо ви використовуєте mongoexportдля створення дампа, обов'язково використовувати , mongoimportа не mongorestoreзавантажувати його.


так, це була чарівна паличка для мене з тих пір, як я використовував mongoexport. tnx
SyCode

5

Це повідомлення про помилку "не знаю, що робити з файлом" також може виникнути, якщо у вас є файл BSON, який не має розширення файлу .bson.

Як правило, це не проблема, оскільки mongodumpгенерує файли з розширеннями .bson, але в моєму випадку у мене був файл BSON, який не був створений mongodumpі мав інше розширення.


2
і як відновити файл без розширення .bson? (.rdb в моєму випадку)
eagor

Я отримую цю помилку марною на файли з на .bsonрозширенні:don't know what to do with file "dump/mydb/users.bson", skipping...
Ден Dăscălescu

2

Я ввімкнув, version 3.2 windowsі, mongorestoreсхоже, помилка:

Якщо я вкажу /db:database_nameабо /d database_nameотримаю помилку:

don't know what to do with subdirectory "dump\database_name", skipping...

Замість цього, якщо я дозволю йому працювати у цілому каталозі дампа, він, здається, працює. Я використовував команду:

mongorestore /host:remote_host dump

Моя поточна структура каталогу:

.
..
dump
dump\database_name

1

Я отримав цю помилку, коли у мене була збірка, що відповідає імені того, кого я намагався відновити, присутній у Монго, і в кінцевому підсумку перейшов у Монго та видалив його за допомогою db.m101.drop ();


0

Мені знадобилося певний час, щоб розібратися у варіантах для монгоресторе, після того як я деякий час отримував цю помилку.

a) Немає запущених екземплярів mongod.

б) mongorestore -v -host localhost:27017 --dbpath "Actual Path for the Mongo DB- set in config" "Location where the dump is"

Використання dbpath дозволяє запускати цю команду без будь-якої запущеної версії mongod. І це вирішило мою помилку.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.