kesalahan mongorestore: Tidak tahu apa yang harus dilakukan dengan file dump [ditutup]

121

Saya telah menginstal mongo DB di jalur berikut c:\mongodb\bin. Saya telah mengkonfigurasi PATH variabel lingkungan saya dalam pengaturan lanjutan. Saya juga menjalankan mongod. Ketika saya menjalankan perintah berikut mongorestore dump dari jalur berikut c:\hw1-1\dump(Ini berisi file BSON) Saya mendapatkan kesalahan ini:

Tidak tahu apa yang harus dilakukan dengan file dump

Saya telah merujuk ke utas ini untuk memeriksa jalur saya.

Prasanna Aarthi
sumber
Semua jawaban berbeda karena semua kesalahan ini sebenarnya berarti bahwa beberapa flag Anda salah. Bendera mana yang salah akan tergantung pada apa yang Anda pulihkan dan di mana Anda memulihkannya. Gunakan mongodump --helpuntuk mendapatkan daftar flag saat ini pada instance Anda untuk men-debug masalah ini.
Liam

Jawaban:

279

di mongodb 3.0 atau lebih tinggi, kita harus menentukan nama database yang akan dipulihkan

mongorestore -d [your_db_name] [your_dump_dir]
clevertension
sumber
Saya menggunakan windows versi 3.0.3 dan menentukan nama database berhasil untuk saya! Terima kasih @clevertension.
Sotiris Zegiannis
Bekerja seperti pesona di 3.0.6 juga.
sharmaap
Ini adalah masalah yang saya alami setelah meningkatkan mongodb-tools, terima kasih!
emyller
2
Ini bekerja untuk saya menggunakan otentikasi seperti ini:mongorestore -u k00k -p 1337p455w0rd -d mydb ./dump/mydb
k00k
Ini adalah jawaban lama. Dalam versi yang lebih baru, Anda tidak dapat menentukan parameter --db( -d) dalam banyak kasus. Beginilah cara saya memulihkannya saat ini: mongorestore --nsFrom=fromdbname.* --nsTo=todbname.* yourdumpfolder/Selanjutnya ketika Anda menggunakan gzip Anda perlu memberikan --gzipparameter dan jika Anda ingin menimpa barang-barang Anda dapat menambahkan --dropparameter.
Jos
36

Anda mungkin melihat kesalahan ini:

EROR: tidak tahu apa yang harus dilakukan dengan file [dump]

Artinya dalam kasus ini, tidak ada file atau direktori yang dipanggil dumpdi direktori kerja Anda saat ini. Jadi, Coba ini terlebih dahulu cd c:/hw1-1/(atau sintaks apa pun yang benar di Windows, saya tidak dapat mengujinya.) Atau Anda dapat menentukan jalur lengkap ke dumpdirektori:

mongorestore c:/hw1-1/dump
Mzzl
sumber
terima kasih c: / hw1-1 mongorestore dump berfungsi dengan baik ..
Prasanna Aarthi
9

Jika Anda menggunakan mongoexportuntuk membuat dump, pastikan untuk menggunakan mongoimportdaripada mongorestorememuatnya.

punkrockpolly
sumber
ya, ini adalah tongkat ajaib untukku sejak aku menggunakannya mongoexport. tnx
SyCode
5

Pesan kesalahan ini "tidak tahu apa yang harus dilakukan dengan file" juga dapat terjadi jika Anda memiliki file BSON yang tidak memiliki ekstensi file .bson.

Umumnya ini bukan masalah karena mongodumpmenghasilkan file dengan ekstensi .bson, tetapi dalam kasus saya, saya memiliki file BSON yang tidak dibuat oleh mongodumpdan memiliki ekstensi file yang berbeda.

helmy
sumber
2
dan bagaimana Anda memulihkan file tanpa ekstensi .bson? (.rdb dalam kasus saya)
eagor
Saya mendapatkan error tidak membantu ini pada file dengan yang .bsonekstensi:don't know what to do with file "dump/mydb/users.bson", skipping...
Dan Dascalescu
2

Saya aktif version 3.2 windowsdan mongorestoresepertinya ada bug:

Jika saya menentukan /db:database_nameatau /d database_namesaya mendapatkan kesalahan:

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

Sebaliknya jika saya membiarkannya berjalan di seluruh direktori dump, sepertinya itu berfungsi. Perintah yang saya gunakan adalah:

mongorestore /host:remote_host dump

Struktur direktori saya saat ini adalah:

.
..
dump
dump\database_name
Anton Wolkov
sumber
1

Saya mendapat kesalahan ini ketika saya memiliki koleksi yang cocok dengan nama yang saya coba pulihkan sekarang di Mongo akhirnya masuk ke Mongo dan menghapusnya menggunakan db.m101.drop ();

Donovan Thomson
sumber
0

Butuh beberapa waktu bagi saya untuk mencari tahu opsi untuk mongorestore, setelah saya terus mendapatkan kesalahan ini selama beberapa waktu.

a) Tidak ada contoh mongod yang sedang berjalan.

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

Menggunakan dbpath, memungkinkan untuk menjalankan perintah ini tanpa versi mongod yang sedang berjalan. Dan ini menyelesaikan kesalahan saya.

Roshan Khandelwal
sumber