lỗi mongorestore: Không biết phải làm gì với tệp kết xuất [đã đóng]


121

Tôi đã cài đặt mongo DB trong đường dẫn sau c:\mongodb\bin. Tôi đã định cấu hình PATH biến môi trường của mình trong cài đặt nâng cao. Tôi cũng có mongod đang chạy. Khi tôi chạy lệnh sau, kết xuất mongorestore từ đường dẫn sauc:\hw1-1\dump (Điều này chứa các tệp BSON) Tôi gặp lỗi này:

Không biết phải làm gì với tệp kết xuất

Tôi đã tham khảo chủ đề này để kiểm tra đường dẫn của mình.


Tất cả các câu trả lời đều khác nhau bởi vì tất cả lỗi này thực sự có nghĩa là một số cờ của bạn không chính xác. Cờ nào không chính xác sẽ phụ thuộc vào những gì bạn khôi phục và nơi bạn khôi phục nó. Sử dụng mongodump --helpđể lấy danh sách các cờ hiện tại trên phiên bản của bạn để gỡ lỗi vấn đề này.
Liam

Câu trả lời:


278

trong mongodb 3.0 trở lên, chúng ta nên chỉ định tên cơ sở dữ liệu để khôi phục

mongorestore -d [your_db_name] [your_dump_dir]

Tôi đang sử dụng phiên bản windows 3.0.3 và việc chỉ định tên cơ sở dữ liệu đã giúp tôi! Cảm ơn bạn @clevertension.
Sotiris Zegiannis

Cũng hoạt động như một sự quyến rũ trên 3.0.6.
sharmaap

Đây là vấn đề tôi gặp phải sau khi nâng cấp mongodb-tools, cảm ơn!
emyller

2
Điều này làm việc cho tôi sử dụng xác thực như vậy:mongorestore -u k00k -p 1337p455w0rd -d mydb ./dump/mydb
k00k

Đây là một câu trả lời cũ. Trong các phiên bản mới hơn, bạn không thể chỉ định tham số --db( -d) trong nhiều trường hợp. Đây là cách tôi khôi phục nó hiện tại: mongorestore --nsFrom=fromdbname.* --nsTo=todbname.* yourdumpfolder/Ngoài ra khi bạn sử dụng gzip, bạn cần cung cấp --gziptham số và nếu bạn muốn ghi đè nội dung, bạn có thể thêm --droptham số.
Jos

36

Có thể bạn đã thấy lỗi này:

LỖI: không biết phải làm gì với tệp [dump]

Có nghĩa là trong trường hợp này, không có tệp hoặc thư mục nào được gọi dumptrong thư mục làm việc hiện tại của bạn. Vì vậy, hãy thử điều này trước cd c:/hw1-1/(hoặc bất kỳ cú pháp chính xác nào trên Windows, tôi không thể kiểm tra nó.) Ngoài ra, bạn có thể chỉ định đường dẫn đầy đủ đến dumpthư mục:

mongorestore c:/hw1-1/dump

cảm ơn bạn c: / hw1-1 mongorestore bãi hoạt động tốt ..
Prasanna Aarthi

9

Nếu bạn đang sử dụng mongoexportđể tạo kết xuất, hãy đảm bảo sử dụng mongoimportthay vì mongorestoretải nó.


vâng, đây là cây đũa thần cho tôi kể từ khi tôi sử dụng mongoexport. tnx
SyCode

5

Thông báo lỗi "không biết phải làm gì với tệp" này cũng có thể xảy ra nếu bạn có tệp BSON không có phần mở rộng tệp .bson.

Nói chung, đây không phải là vấn đề vì mongodumptạo tệp có phần mở rộng .bson, nhưng trong trường hợp của tôi, tôi có tệp BSON không được tạo bởi mongodumpvà có phần mở rộng tệp khác.


2
và làm cách nào để khôi phục tệp mà không có phần mở rộng .bson? (.rdb trong trường hợp của tôi)
eagor

Tôi nhận được lỗi vô ích này trên các tập tin với các .bsonphần mở rộng:don't know what to do with file "dump/mydb/users.bson", skipping...
Dan Dascalescu

2

Tôi đang ở trên version 3.2 windowsmongorestoredường như của tôi có một lỗi:

Nếu tôi chỉ định /db:database_namehoặc /d database_nametôi gặp lỗi:

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

Thay vào đó, nếu tôi để nó chạy trên toàn bộ thư mục kết xuất thì nó có vẻ hoạt động. Lệnh tôi đã sử dụng là:

mongorestore /host:remote_host dump

Cấu trúc thư mục hiện tại của tôi là:

.
..
dump
dump\database_name

1

Tôi gặp lỗi này khi tôi có một bộ sưu tập khớp với tên của bộ sưu tập mà tôi đang cố khôi phục hiện tại trong Mongo nhưng cuối cùng lại vào Mongo và xóa nó bằng cách sử dụng db.m101.drop ();


0

Tôi đã mất một thời gian để tìm ra các tùy chọn cho mongorestore, sau khi tôi liên tục gặp lỗi này trong một thời gian.

a) Không có phiên bản mongod nào đang chạy.

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

Sử dụng dbpath, cho phép chạy lệnh này mà không cần bất kỳ phiên bản mongod nào đang chạy. Và điều này đã giải quyết được lỗi của tôi.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.