Per quanto vedo tutti i comandi operano sullo stesso database in mongodb. Voglio fare qualcosa del genere:.Come inserire un record da un database mongo in un altro?
db.mySourceCollection.find() forEach (function (x) {db.theDestinationCollection.save (x)});
dove mySourceCollection
è in liveDatabase
e theDestinationCollection
è in testDatabase
.
Grazie! Sapevo dell'uso, ma non avrei mai pensato di mantenere lo stato in una variabile. IMHO Mi aspetterei un metodo use() su db per uso fluido, ad es. db.use ('sourceDb'). collectionA.do (db.use ('destDb'). – b7kich
Può accadere che il database abbia caratteri UTF-8 .Questo viene eseguito dal client, se il client è nativo (per esempio per Ubuntu, '$ mongo --version' =>' Versione della shell MongoDB: 1.6.3') potrebbe mancare UTF-8 e quindi la copia fallirà. Se questo è il caso e non si vuole mettere sporco nel tuo server per ricompilare un nuovo client, puoi sempre ricompilarlo in una macchina separata e fare questo lavoro sulla rete collegandoti a un server remoto.Tuttavia, i dati fluiranno dal server al client e viceversa, quindi può essere lento, comunque con un client UTF-8 remoto, funziona !!! –