tutorial - mongodb university
Mongorestore de un db causándome problemas (6)
Creo que la estructura de tu carpeta puede estar arruinándose cuando tratas de moverla. Por ejemplo, esto funciona para mí:
$ ./mongodump --db Gen
$ ./mongorestore --db Gen --drop dump/Gen/
¿Puedes intentar no mover el directorio de volcado y restaurar desde / bin / dump / Gen?
El directorio que especifique debe tener archivos .bson, por ejemplo,
$ ls /bin/dump/Gen
foo.bson bar.bson baz.bson
Soy nuevo en MongoDB y tengo dificultades para hacer una copia de seguridad de mi base de datos local y restaurarla en mi servidor. Encontré el enlace en el sitio web de Mongo: http://www.mongodb.org/display/DOCS/Import+Export+Tools pero todavía tengo problemas con la restauración.
Cuando hago mi copia de seguridad, llamo
mongodump --db Gen
Luego veo que todas las colecciones se vuelcan en la carpeta /bin/dump/Gen
Copio y pego de local al servidor en la misma carpeta que la llamada
mongorestore --db Gen --drop --dbpath dump/Gen
Pero me sale lo siguiente: Error : root directory must be a dump of a single database when specifying a db name with --db
Debe ser cualquier otro directorio en un directorio de volcado. Por lo tanto, elimine primero el directorio y vuelva a ejecutar el comando mongorestore -d db dump/db
Ejemplo:
./mongorestore -d db -c mycollection dump/db
levantará el siguiente error
ERROR: ERROR: root directory must be a dump of a single collection
ERROR: when specifying a collection name with --collection
puede eliminar la opción -c para reiniciar este error. Debido a dump / db, especifique el archivo db, pero no la recopilación.
Esto es lo que terminó funcionando para mí ( mydb
es el nombre de mi base de datos):
mongorestore --drop -db mydb mydbbackup/mydb/
Después de mi mongodump
:
mongodump -d mydb -o mydbbackup
Ok, descubro lo que estoy haciendo mal:
estaba haciendo
mongorestore --db Gen --drop --dbpath dump/Gen
¡Pero sin el --dbpath funciona bien!
mongorestore --db Gen --drop dump/Gen
¡Gracias a todos!
Una nota adicional para quien no quiera ser molestado por el error "directorio raíz debe ser un volcado de una sola base de datos cuando se especifica un nombre db con --db"
Al especificar --db y sin --collection (restauración de una base de datos completa): - la ruta dada debe ser una ruta de directorio - el directorio no debe contener ningún otro archivo que no sea .bson o .json. Me tomó un tiempo darme cuenta de que la carpeta oculta .svn (si usa SVN) estropeará el script