2011-01-13 11 views
13

Tengo 500,000 documentos dentro de una colección en un servidor de transferencia, necesito mover estos documentos al servidor de producción.Mover los datos de MongoDB del servidor de transición a Producción

¿Cuál es la mejor manera de mover estos datos, puedo dejar que mongodb lo replique desde la producción hasta la producción, muevo los archivos de datos o hago una exportación y lo vuelvo a importar?

Respuesta

9

Eche un vistazo a las herramientas mongodump y mongorestore. Si solo quieres algunos de los documentos en la colección, puedes usar el parámetro --query.

+1

' ./mongodump --db el blog --collection mensajes hace el truco Fix – Tom

-1

Los archivos de datos no son por colección, por lo que queda fuera si desea copiar una colección, no una base de datos completa. Si es por base de datos, puede copiar los archivos de la base de datos sin problemas. No estoy seguro de 32 bits frente a 64 bits ... pero supongo que tienes 64 bits si ejecutas MongoDB.

Ahora, si la colección existe en ambos y necesita combinarse, tenga cuidado de mantener _id único. mongoimport/mongoexport es tu amigo.

13
  • Para volcar una colección hacer

    mongodump -d -c nombredb collectionname

    En una máquina Windows esto creará una carpeta volcado en la carpeta 'data' del Mongo con BSON archivos

  • Para restaurar en un host remoto

    nombre de host mongorestore -h -d -c nombredb collectionname volcar \ nombredb \ collectionname.bson

0

Su sencillo.

En el servidor de destino> consola mongo> ejecutar

db.copyDatabase(source_db_name, destination_db_name, source_hostname, username, password) 
Cuestiones relacionadas