2011-10-24 9 views
5

He vertido una base de datos MongoDB con la siguiente línea de comandos mongodumpla restauración de un vertedero con mongodb falla

mongodump -h www.myhost.com -u myusername -p mypassword -d mydb > dump.bson 

Y estoy tratando de restaurar el volcado en mi servidor local:

mongorestore -h localhost -d mydb dump.bson 

Lamentablemente falla con el siguiente error:

assertion: 10264 invalid object size: 1096040772 

¿Alguien sabe lo que podría causar este error?
En la versión tanto los servidores de mongo es 1.8.3

Gracias

+0

¿Ambos sistemas son de 32/64 bits? También podría ayudar a reparar el db original antes de descargarlo. – zulkamal

+0

el servidor local es de 64 bits, pero el control remoto, aún no lo sé. De lo contrario, he intentado repararDatabase() pero hasta el mismo error ... – PierrOz

+0

Si son los mismos bits, entonces es mejor preguntar en la lista de correo de mongodb. He tenido este error una vez en una pequeña colección y reparar hizo el truco. – zulkamal

Respuesta

6

Debido primera salida de cadena de mongodump es "habilita el bloqueo del nivel de dB: 0"

Es necesario para hacer esto

 
tail -n+2 dump.bson > dump_fix.bson 
mongorestore -h localhost -d mydb dump_fix.bson 
+0

¡muy interesante! Lo probaré, thw para la punta – PierrOz

+0

En la nueva versión de mongo (2.1 estable) esto debe ser reparado. ¡Vea https://github.com/mongodb/mongo/pull/204 – azat

+0

trabajado para mí! ¡Gracias! – jsh

6

excusa mi Inglés: P esto sucedió a mí cuando lo hice con la exportación y mongoexport intento importar con mongorestore: D mi error! Tuve que usar mongoimport. Recuerde: mongoexport/mongoimport y mongodump/mongorestore

Espero que esto sea útil para alguien: P

+0

¡Ese fue mi error esta tarde también! –

1

También he encontrado este problema. Y finalmente encontré que este problema fue causado al usar el comando mongodump de una manera incorrecta.

+0

Hola @zwalker. Probablemente sería una buena idea decirnos qué comando y qué hiciste para solucionarlo :) –

+0

Estoy de acuerdo wutg @TarynEast. –

0

usar bien mongo restauración en lugar de mongodump

0

Esto no se explica muy bien en cualquier lugar que he encontrado, pero he encontrado una solución que funcionó.

He descargado un archivo .tgz de mongolab, que contenía archivos .bson y .json. Creé una carpeta ~/dump en mi mac. Copié todos esos archivos .bson y .json en la carpeta ~/dump, así que tenía ~/dump/users.bson por ejemplo.

que corrió este comando en el terminal:

mongorestore -h 127.0.0.1 -db <the_db_name_on_server_this_backup_is_from> 

Importó en cuestión de segundos. Estoy seguro de que hay otras formas/opciones, pero esto es lo que funcionó para mí.

Cuestiones relacionadas