2011-01-13 13 views
13

Ho 500.000 documenti all'interno di una raccolta su un server di gestione temporanea, ho bisogno di spostare questi documenti sul server di produzione.Spostare i dati MongoDB dal server di gestione temporanea alla produzione

Qual è il modo migliore per spostare questi dati, posso consentire a mongodb di replicarlo dalla messa in scena alla produzione, spostare i file di dati o eseguo un'esportazione e una reimportazione?

risposta

9

Dai un'occhiata agli strumenti mongodump e mongorestore. Se vuoi solo alcuni dei documenti della collezione puoi usare il parametro --query.

+1

' ./mongodump --db blog --collection messaggi fa il trucco Fix – Tom

-1

I file di dati non sono per collezione quindi è fuori se si desidera copiare una raccolta non un db completo. Se è per DB è possibile copiare i file del database bene. Non sono sicuro di 32 bit contro 64 bit ... ma suppongo che tu abbia 64 bit se esegui MongoDB.

Ora, se la raccolta esiste su entrambi e ha bisogno di unire quindi essere superbo attento a mantenere _id unico. mongoimport/mongoexport è tuo amico.

13
  • Per scaricare una raccolta fare

    mongodump -d dbname -c collectionname

    In un computer Windows questo creerà una cartella discarica sotto cartella Mongo 'data' con BSON file

  • Per ripristinare su un host remoto

    hostname mongorestore -h -d dbname -c collectionname discarica \ dbname \ collectionname.bson

0

sua semplice.

Nel server di destinazione> shell mongo> eseguire

db.copyDatabase(source_db_name, destination_db_name, source_hostname, username, password) 
Problemi correlati