Có lẽ cách hiệu quả nhất để sao chép tập hợp từ DB sang DB khác là sử dụng mongodump / mongorestore từ shell của bạn:
sh$ echo 'db.createCollection("some_collection")' | mongo my_dst_db
sh$ mongodump --db my_src_db --collection some_collection --out=- | \
mongorestore --db my_dst_db --collection some_collection --dir=-
Lệnh đầu tiên sẽ sử dụng mongo
để tạo bộ sưu tập đích. Điều này là bắt buộc đối với trường hợp sử dụng của bạn, từ những gì tôi vừa thử nghiệm, mongorestore
sẽ không tạo một bộ sưu tập trống. Sau đó, đây chỉ là quá trình kết xuất / khôi phục.
Xin lưu ý rằng mongodump
sẽ chấp nhận --query
trong trường hợp bạn cần một một phần bản sao bộ sưu tập của bạn.